每当我查看SQL表描述时,我几乎总是看到列数据大小为2 ^ n。 (例如8,16,64,256等)。我知道由于二进制的性质以及字节长度为8位的事实,2 ^ n在计算中常用。但它在定义SQL表时实际上有什么不同吗?
如果我在名为" FULL_NAME"的表格中有一列,并且我想为一个相当长的名字提供一些空间,我会这样做
FULL_NAME VARCHAR(50) NOT NULL,
在我的create table
声明中。但我很少在其他人的桌子上看到这一点。对于这个例子,我可能会看到
FULL_NAME VARCHAR(64) NOT NULL,
而是使用。
使用次高的2 ^ n值是否有一些实际优势?看起来这只是毫无意义地为列分配更多空间,只是为了让数字感觉像计算机更喜欢它。我认为列空间分配足够聪明,每次不输入大小为2 ^ n时都不必浪费大量空间。