jixuaa 发表于 2013-7-9 09:27:42

Sql server中字符串类型总结

数据类型比较多,要记住每一种类型的具体用法不是件容易的事情,记不住的时候可以查看Sql Server帮助查看器,输入数据类型,可以搜到所有类型,不过只有定义,没有例子。
文章主要描述的是SQL Server字符串数据类型(4种)以及各类型何时使用。
1.非Unicode字符串
(1)char
此数据类型可存储1~8000个定长字符串,字符串长度在创建时指定;如未指定,默认为char(1)。每个字符占用1byte存储空间。
(2)varchar
此数据类型可存储最大值为8000个字符的可变长字符串。可变长字符串的最大长度在创建时指定,如varchar(50),每个字符占用1byte存储空间。
(3)text
此数据类型可存储最大值为2147483647个字符的变长文本,并且无需指定其初始值,每个字符占用1byte存储空间,一般用来存储大段的文章。text数据类型实际上是一个Large Object数据类型,默认情况下,此类型的数据不是存储在数据行内,而是存储于独立的Large Object数据页上。另外,text数据类型不能做为函数、存储过程或触发器中的参数来用。
2.Unicode字符串
(1)nchar
此数据类型可存储1~4000个定长Unicode字符串,字符串长度在创建时指定;如未指定,默认为nchar(1)。每个字符占用2bytes存储空间。
(2)nvarchar
此数据类型可存储最大值为4000个字符可变长Unicode字符串。可变长Unicode字符串的最大长度在创建时指定,如nvarchar(50),每个字符占用2bytes存储空间。
(3)ntext
同text数据类型,只不过存储的是最大值为1073741823个字符的Unicode变长文本,每个字符占用1byte存储空间。
3.使用
(1)如果有中文,那就用Unicode字符串吧,因为Unicode编码汉字和字母都是2字节,处理速度会快点。
(2)如果是定长的就用固定长度字符串char,nchar;否则用变长字符串。
(3)如果注重处理速度用固定长度字符串。

sol229 发表于 2013-7-9 09:35:14

穿别人的鞋,走自己的路,让他们找去吧。

判官007 发表于 2013-7-9 10:37:32

爱——不是想出来的,爱——是做出来的!!

5d6d网 发表于 2013-7-9 12:01:35

与时俱进,你我共赴高潮!

yanqiufang 发表于 2013-7-9 19:22:22

我本非随便的人,但如果你想随便,那我就随你的便好啦!

奥飞火千万电 发表于 2013-7-9 23:40:04

有竞争才有进步嘛

鸬鹚洲 发表于 2013-7-10 00:02:37

没看完~~~~~~ 先顶,好同志
页: [1]
查看完整版本: Sql server中字符串类型总结