细说SQL Server数据类型

本文详细介绍了SQL Server中字符型和数值型数据类型的特点及应用,包括char、varchar、nvarchar等字符类型的区别,以及bit、int、bigint等数值类型的取值范围。针对不同场景给出了数据类型选择的建议。

1、字符型

char 定长,查询速度快,最大8000字符(非unicode编码)
char(10) '小明' 前四个字符存放‘小明’,后添6个空格补全

varchar 变长,最大8000字符(非unicode编码)

varchar(10) '小明' sqlServer 只分配四个字符,这样可以节省空间

ntext 可变长度Unicode 数据类型,最大长度为2的30次方-11073741823)个字符

text 可变长度非Unicode 数据类型,最大长度为2的31次方-12147483647)个字符

区别
text 是字节格式存储英文的,也可以存储中文但有时候会显示成乱码
ntext 是多字节格式存储unicode的,也就是存储各种文字使用

nchar 定长,最大4000字符(unicode编码)
nchar(10) '小明' 前四个字符存放‘小明’,后添6个空格补全


nvarchar 变长,最大4000字符(unicode编码)

nvarchar(10) '小明' sqlServer 只分配四个字符,这样可以节省空间


特别说明
一般带有汉子的字段用nvarchar,英文或者符号的用varchar,英文nvarchar为unicode字符集,该类型的字段无论是单个字母
还是单个汉子都占用两个字节,而varchar,字母占用一个字节,汉子占两个字节,nvarchar 处理汉子或者其他unicode字符集的
速度要比varchar字段快

unicode编码:用两个字节表示一个字符(可以是英文字母,可以是汉子)
非unicode编码:用一个字节表示一个字母,用两个字节表示一个汉子

 

2 数据类型

bit 范围0到1
int 范围 负的2的31次方到正的2的31次方减1
bigint 范围 负的2的63次方到正的2的63次方减1
float 存放小数,不推荐使用
numeric 小数
强烈建议 如果要去存放小数,最好使用numeric

 

转载于:https://www.cnblogs.com/weicanpeng/p/8033216.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值