码上敲享录 > sqlserver实战经验分享 > sqlserver各个常用数据类型讲解

sqlserver各个常用数据类型讲解

上一章章节目录下一章 2018-01-18已有3894人阅读 评论(0)

tinyint:不能指定长度,默认0,占1字节, 可存储数值范围0 到 255,不能存储负数。


smallint:不能指定长度,默认0,占2字节, 可存储数值范围-2^15 (-32,768) 到 2^15-1 (32,767),不能存储负数。



int:不能指定长度,默认0,占4字节, 可存储数值范围-2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647),id设置成int类型即可,20多亿条数据是足够了。


bigint:不能指定长度,默认0,占8字节, 可存储数值范围-2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,372,036,854,775,807)


binary(n): 固定长度的n个字节二进制数据。n必须从1到 8000,默认是1。存储空间大小为n字节。

例如 INSERT INTO hhhhhh (id) VALUES (CAST ('55555' as binary ));

  SELECT CAST (id as VARCHAR) from hhhhhh;


varbinary(MAX)或者varbinary(n): 可变长度,所占用的空间由存储的值决定,n 的取值范围为 1 至 8000,默认是1。max 是指最大存储空间是 2^31-1 个字节,即最大4GB。


bit: 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,无论存多大数值或存'true'数据库都显示1。存0或'false'在数据库中显示为0。

注意:很省空间的一种数据类型,如果能够满足需求应该尽量多用。


char(n):n的取值范围为 1 至 8000,默认是1,占用的存储空间固定为n个字节。只能存储n个字符,例如n个英文,n个符号和n/2个中文。


varchar(n):字符型,同char类型一样,不同的是varchar所占的存储空间不是固定n个字节,而是由所存的数据大小决定,所以推荐使用varchar,而不是char

 

nchar(n): 数据类型用来存储定长统一编码字符型数据。取值范围为 1 至 4000,只能存储n个中文,英文或者符号等

 

nvarchar(n): 和nchar差不多,区别就是nvarchar占用内存是存的数据大小。


date :不用指定长度,只能存储日期,数据的格式:yyyy-MM-dd

例如insert into hhhhhh (id) values ('2017-01-03'),在数据库显示2017-01-03


datetime: 不用指定长度,存储日期和时间,数据的格式:2017-01-02 21:55:52:000,精确到3位数的毫秒。

例如insert into hhhhhh (id) values ('2017-01-03'),在数据库显示2017-01-03 00:00:00:000

 insert into hhhhhh (id) values ('2017-01-03 21:55'),在数据库显示2017-01-03 21:55:00:000


datetime2: 与datetime不同的是毫秒位数不同,保存七位数的毫秒,2017-01-03 22:11:00.0000000


timestamp:  数据类型与时间和日期无关。SQL Server timestamp 是二进制数字,它表明数据库中数据修改发生的相对顺序。不可为空的 timestamp 列在语义上等价于 binary(8) 列。可为空的 timestamp 列在语义上等价于varbinary(8)列。此字段不可编辑,新增或者修改某条记录时,这条记录timestamp字段就自增。


decimal(len,p)和numeric(len,p):  len固定精度是存储数据的个数,最大为38,不包括小数点,小数位数p是保留小数点后面的位数,最大为38。

例如decimal(3,2)代表最大只能存9.99,只能存三个数字并且两个小数,如果存9.9,那么在数据库显示为9.90自动填充0


float(n):  数据库中只有两种长度设置,当n>=25时,限制为float(53),和double一样,数据库尽量不要使用double类型,取值范围-1.79E+308 ~ +1.79E+308。可以保留15位小数位;当n<=24时,类型自动转化为real,取值范围为-3.40E+38 ~ +3.40E+38,可以保留7位小数位。缺点是精确度会失真。


本文地址:http://www.yayihouse.com/yayishuwu/chapter/1083

0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交