加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

数据库 – 为什么SQL字段长度始终为(2 ^ n)-1,除非小于127?

发布时间:2020-12-12 07:49:37 所属栏目:MsSql教程 来源:网络整理
导读:许多数据库模式似乎遵循以下标准: (2 ^ n)-1对于大字段: varchar(511)varchar(255)varchar(127) …然后(2 ^ n)为较小的 varchar(64)varchar(32)varchar(16)varchar(8) 我理解为什么使用(2 ^ n)-1的数字,我不明白为什么没有必要将趋势继续到小字段. 例如. va
许多数据库模式似乎遵循以下标准:

(2 ^ n)-1对于大字段:

varchar(511)
varchar(255)
varchar(127)

…然后(2 ^ n)为较小的

varchar(64)
varchar(32)
varchar(16)
varchar(8)

我理解为什么使用(2 ^ n)-1的数字,我不明白为什么没有必要将趋势继续到小字段.

例如.

varchar(63)
varchar(31)
varchar(15)
varchar(7)

这有什么理由还是只是回报已经减少太多了?

解决方法

我记得过去的时候,使用2 ^ n长度是更好的磁盘或内存块对齐.
对齐块更快.
今天“Block”尺寸更大,内存和磁盘速度足以忽略对齐,
对于那些非常大的块来说(无论“非常大”意味着今天….)

如今这样做是传统的.

另一个原因是我的名言:
只有10种类型的人:可以二元化的人和其他人.

并且2 ^ n -1是mersenne primes的候选者.所以它的怪异……

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读