对于程序中的一般字符串种类的字段,SQL Server中有char、varchar、nchar、nvarchar四类型型来对应,那样这四类型型的不同之处呢,这里做一下对比。
1.定长或变长
所谓定长就是长度固定,当要保存的数据长度不够时将自动在其后面填充英文空格,使长度达到相应的长度;有var前缀的,表示是实质存储空间是动态变化的,譬如varchar,nvarchar变长字符数据则不会以空格填充。
2.Unicode或非Unicode
数据库中,英文字符仅需一个字节存储就足够了,但汉字和其他海量非英文字符,则需要两个字节存储。假如英文与汉字同时存在,因为占用空间数不同,容易导致混乱,致使读取出来的字符串是乱码。Unicode字符集就是为知道决字符集这种不兼容的问题而产生的,它所有些字符都用两个字节表示,即英文字符也是用两个字节表示。而前缀n就表示Unicode字符,譬如nchar,nvarchar,这两类型型用了Unicode字符集。
3.几种数据种类的存储的最大容量
char,varchar 最多8000个英文,4000个汉字
nchar,nvarchar 最多可存储4000个字符,无论英文还是汉字

TAG标签:SQLServer(2)
转载请说明来源于乐奇绿软(https://www.hileqi.com)
本文地址:https://www.hileqi.com/news/6378.html
郑重声明:文章来源于网络作为参考,本站仅用于分享不存储任何下载资源,如果网站中图片和文字侵犯了您的版权,请联系我们处理!邮箱3450399331@qq.com



赣公网安备 36010602000087号
相关文章