
Subscribe to Breezeandmoon

Subscribe to Breezeandmoon
Share Dialog
Share Dialog
<100 subscribers
<100 subscribers


空间和时间数据类型是非常标准的,只有基于 Web3 用例的独特性质的一些差异。这些差异在下面用 *** 标记。
VARCHAR – 可变大小的文本或字符串
可以选择指定最大字符数,即只允许 16 个字符VARCHAR(16)
*** 如果未指定大小,则默认为最大 65,536 个字符
使用时分配存储空间,因此未使用的字符不会消耗额外的空间
CHAR – 固定大小的文本或字符串
必须指定最大字符数,即存储16个字符CHAR(16)
定义时分配存储空间,因此将始终消耗 16 个字节CHAR(16)
除了向后兼容性之外,没有任何实质性好处,因此建议用于较新的应用程序CHAR VARCHAR VARCHAR
TINYINT – 单字节数值,有符号
表示 -128 到 +127 之间的数值
消耗1字节
SMALLINT – 有符号的两字节数值
表示 -32,768 和 +32,767 之间的数值
消耗2个字节
INTEGER(或 INT) ——四字节数值,有符号
表示 -2.1B 和 +2.1B 之间的数值
消耗4个字节
BIGINT – 八字节数值,有符号
范围在 -9.2 x1018 和 +9.2 x1018 之间
消耗8字节
DECIMAL – 具有设定数字大小和精度的可变字节数字
必须设置大小(所有数字的个数)和精度(小数点后的个数),即可以容纳12个整数和6个小数点后的数字
DECIMAL(18,6)
*** 由于区块链用例的极端大小和精度,空间和时间可以支持接近无限大小的十进制数据类型。在我们的页面上了解有关Infinite Precision的更多信息。
DOUBLE(或 REAL) ——浮点数
使用值和指数,可以表示从非常大到非常小的数字,但高精度精度有限
消耗8字节
BOOLEAN – 真/假标志
表示两种状态之一,True(开)或 False(关)
DATE – 经验证的日历日期
默认格式是YYYY-MM-DD
日期始终根据标准日历规则进行验证,即无效日期(例如插入月份 13)将引发数据库错误
有许多日期函数可以简化日期计算,请参阅下面的部分
请注意,类型的效率低于数据类型DATE TIMESTAMP
`TIME——经过验证的时间值
默认格式是hh:mm:ss[.nnnnnnnnn] 时间始终根据标准时钟规则进行验证,即无效时间(例如插入 61 分钟)将引发数据库错误 时间范围为 0 至 23 分钟和秒范围从 0 到 59 有许多时间函数可以简化日期计算,请参阅下面的部分 TIMESTAMP – 经过验证的日期和时间组合值
默认格式是YYYY-MM-DD hh:mm:ss[.nnnnnnnnn] 验证与和数据类型相同DATETIME 有许多日期和时间函数可以简化日期计算,请参阅下面的部分 请注意,这比类型更有效,尤其是对于时间而言DATE BINARY——二进制信息的存储
存储为可变长度字节数组 可用于存储二进制对象(图片、音频等) 最大字节大小为 65k UUID – 随机生成的通用唯一标识符
有时称为 GUID(全局唯一标识符) 生成唯一的 128 位(16 字节)唯一标识符 经常用作代理键`
空间和时间数据类型是非常标准的,只有基于 Web3 用例的独特性质的一些差异。这些差异在下面用 *** 标记。
VARCHAR – 可变大小的文本或字符串
可以选择指定最大字符数,即只允许 16 个字符VARCHAR(16)
*** 如果未指定大小,则默认为最大 65,536 个字符
使用时分配存储空间,因此未使用的字符不会消耗额外的空间
CHAR – 固定大小的文本或字符串
必须指定最大字符数,即存储16个字符CHAR(16)
定义时分配存储空间,因此将始终消耗 16 个字节CHAR(16)
除了向后兼容性之外,没有任何实质性好处,因此建议用于较新的应用程序CHAR VARCHAR VARCHAR
TINYINT – 单字节数值,有符号
表示 -128 到 +127 之间的数值
消耗1字节
SMALLINT – 有符号的两字节数值
表示 -32,768 和 +32,767 之间的数值
消耗2个字节
INTEGER(或 INT) ——四字节数值,有符号
表示 -2.1B 和 +2.1B 之间的数值
消耗4个字节
BIGINT – 八字节数值,有符号
范围在 -9.2 x1018 和 +9.2 x1018 之间
消耗8字节
DECIMAL – 具有设定数字大小和精度的可变字节数字
必须设置大小(所有数字的个数)和精度(小数点后的个数),即可以容纳12个整数和6个小数点后的数字
DECIMAL(18,6)
*** 由于区块链用例的极端大小和精度,空间和时间可以支持接近无限大小的十进制数据类型。在我们的页面上了解有关Infinite Precision的更多信息。
DOUBLE(或 REAL) ——浮点数
使用值和指数,可以表示从非常大到非常小的数字,但高精度精度有限
消耗8字节
BOOLEAN – 真/假标志
表示两种状态之一,True(开)或 False(关)
DATE – 经验证的日历日期
默认格式是YYYY-MM-DD
日期始终根据标准日历规则进行验证,即无效日期(例如插入月份 13)将引发数据库错误
有许多日期函数可以简化日期计算,请参阅下面的部分
请注意,类型的效率低于数据类型DATE TIMESTAMP
`TIME——经过验证的时间值
默认格式是hh:mm:ss[.nnnnnnnnn] 时间始终根据标准时钟规则进行验证,即无效时间(例如插入 61 分钟)将引发数据库错误 时间范围为 0 至 23 分钟和秒范围从 0 到 59 有许多时间函数可以简化日期计算,请参阅下面的部分 TIMESTAMP – 经过验证的日期和时间组合值
默认格式是YYYY-MM-DD hh:mm:ss[.nnnnnnnnn] 验证与和数据类型相同DATETIME 有许多日期和时间函数可以简化日期计算,请参阅下面的部分 请注意,这比类型更有效,尤其是对于时间而言DATE BINARY——二进制信息的存储
存储为可变长度字节数组 可用于存储二进制对象(图片、音频等) 最大字节大小为 65k UUID – 随机生成的通用唯一标识符
有时称为 GUID(全局唯一标识符) 生成唯一的 128 位(16 字节)唯一标识符 经常用作代理键`
数据类型的最佳实践
使用- 与旧类型不同,仅根据需要分配字节存储。这使得表更小,查询速度更快。VARCHAR CHAR VARCHAR
用于Web3 – 许多 Web3 概念,如天然气、代币值等,范围可以从 60 到 72 位数字,比任何数字都可以支持的大,但要求精度,而使用像或 这样的浮点会丢失精度。空间和时间允许总大小最多为 300 位数字。DECIMAL(S,0)INT REAL DOUBLE
使用– 而不是在适用时使用,因为它对于大多数操作来说具有更好的性能。 对于非常大的表,请花一些时间将数据类型调整为最大应用程序值。例如,如果您要存储范围从 1 到 12 的代码,则该代码可以轻松放入.将其存储为8 倍的空间,这确实增加了计算和处理时间。TIMESTAMP DATE TINYINT INT
数据类型的最佳实践
使用- 与旧类型不同,仅根据需要分配字节存储。这使得表更小,查询速度更快。VARCHAR CHAR VARCHAR
用于Web3 – 许多 Web3 概念,如天然气、代币值等,范围可以从 60 到 72 位数字,比任何数字都可以支持的大,但要求精度,而使用像或 这样的浮点会丢失精度。空间和时间允许总大小最多为 300 位数字。DECIMAL(S,0)INT REAL DOUBLE
使用– 而不是在适用时使用,因为它对于大多数操作来说具有更好的性能。 对于非常大的表,请花一些时间将数据类型调整为最大应用程序值。例如,如果您要存储范围从 1 到 12 的代码,则该代码可以轻松放入.将其存储为8 倍的空间,这确实增加了计算和处理时间。TIMESTAMP DATE TINYINT INT
No activity yet