HarmonyOS 鸿蒙Next关系型数据库之数据类型总结
HarmonyOS 鸿蒙Next关系型数据库之数据类型总结
HarmonyOS关系型数据库基于sqlite3,底层支持sqlite具有的数据库特性,因此关于数据库的一些操作及sql语句可以参照sqlite3,同时HamonyOS提供了一套完整的对本地数据库进行管理的机制,也增加了一些新的数据类型,应使用相关SDK进行数据库的操作。文本介绍HarmonyOS数据库类型与ArkTs数据类型的对应关系以及针对一些特殊数据类型的存储替代方案。
一:数据库数据类型与ArkTs数据类型对应
HarmonyOS在关系型数据库设计上,提供了多种字段类型来满足不同的数据存储需求。这些字段类型与ArkTS语言中的类型有着直接的对应关系。以下是HarmonyOS关系型数据库字段类型与ArkTS语言类型的主要对应关系:
HarmonyOS数据库字段类型 | ArkTs数据类型 |
NULL | null |
INTEGER | number |
REAL | number |
TEXT | string |
BLOB | ArrayBuffer |
Asset | Asset |
Assets | Assets |
floatvector(128) | Float32Array |
UNLIMITED INT | bigint |
在使用HarmonyOS的关系型数据库时,应根据实际的数据类型需求,选择合适的字段类型,并确保其与ArkTS代码中的变量类型相匹配,以实现数据的有效存储和读取。
二:特殊数据存储
sqlite没有对应的Boolean类型和时间类型,针对这两种类型的数据需要替代方案:
1.存储日期和时间数据类型:
SQLite没有专门提供存储日期和时间存储类型,通常可以TEXT , REAL和INTEGER类型来替代的方式存储:
- TEXT对应的数据:"YYYY-MM-DD HH:MM:SS.SSS"格式的数据;
- REAL对应的数据: Julian日期格式存储,即从公元前 4714 年 11 月 24 日格林尼治时间的正午开始算起的天数;
- INTEGER对应的数据:Unix时间形式的数据 , 即从 1970-01-01 00:00:00 UTC 算起的秒数。
可以以任何上述格式来存储日期和时间,并且可以使用内置的日期和时间函数来自由转换不同格式。
2.布尔数据类型:
采用true用1替代和false用0替代的方式存储。
三:总结
因此,在使用关系型数据库实现数据持久化的时候,应当注意HarmonyOS的一些新特性,比如分布式能力、新增的数据类型Asset等,同时也要关注到sqlite原有的一些限制。
更多关于HarmonyOS 鸿蒙Next关系型数据库之数据类型总结的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS 鸿蒙Next关系型数据库之数据类型总结的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
HarmonyOS 鸿蒙Next关系型数据库支持多种数据类型,用于存储和管理不同类型的数据。以下是主要数据类型的总结:
-
整数类型:
- TINYINT:存储非常小的整数。
- SMALLINT:存储较小的整数。
- MEDIUMINT:存储中等大小的整数。
- INT或INTEGER:存储标准大小的整数。
- BIGINT:存储非常大的整数。
-
浮点类型:
- FLOAT:存储单精度浮点数。
- DOUBLE:存储双精度浮点数。
- DECIMAL:存储定点数,用于精确的小数计算。
-
字符串类型:
- CHAR(n):存储固定长度的字符串。
- VARCHAR(n):存储可变长度的字符串。
- TEXT:存储大文本数据。
- BLOB:存储二进制数据。
-
日期和时间类型:
- DATE:存储日期值。
- TIME:存储时间值。
- DATETIME:存储日期和时间值。
- TIMESTAMP:存储时间戳,自动记录数据的插入或更新时间。
- YEAR:存储年份值。
-
布尔类型:
- BOOLEAN或BOOL:存储布尔值(TRUE/FALSE)。
-
枚举类型:
- ENUM:存储枚举值,值列表在定义时指定。
-
集合类型:
- SET:存储集合值,值列表在定义时指定,可存储多个值。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html