近朱者赤,近墨者黑。

【转】数据库建表类型

上一篇 / 下一篇  2015-10-24 23:10:30 / 个人分类:数据库学习

int、bigint、smallint 和 tinyint
  使用整数数据的精确数字数据类型。
  bigint
  从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。
  int
  从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。
  smallint
  从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。
  tinyint
  从 0 到 255 的整型数据。存储大小为 1 字节。
  注释
  在支持整数值的地方支持 bigint 数据类型。但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。在 SQL Server 中,int 数据类型是主要的整数数据类型。
  1. char
  固定长度,最长n个字符。
  2. varchar
  最大长度为n的可变字符串。
  (n为某一整数,不同数据库,最大长度n不同)
  char和varchar区别:
  varchar必char节省空间,但在效率上比char稍微差一些。
  说varchar比char节省空间,是因为varchar是可变字符串,比如:用varchar(5)存储字符串“abc”,只占用3个字节的存储空间,而用char(5)存储,则占用5个字节(“abc  ”)。
  说varchar比char效率稍差,是因为,当修改varchar数据时,可能因为数据长度不同,导致数据迁移(即:多余I/O)。其中,oracle对此多余I/O描述的表达是:“行迁移”(Row Migration)。
  在数据类型优先次序表中,bigint 位于 smallmoney 和 int 之间。
  只有当参数表达式是 bigint 数据类型时,函数才返回 bigint。SQL Server 不会自动将其它整数数据类型(tinyint、smallint 和 int)提升为 bigint。
  数字占1个字符
  英文占1个字符
  中文字符占2个字符

TAG: 数据库

 

评分:0

我来说两句

Open Toolbar