日期:2014-05-18  浏览次数:20641 次

SQLSERVER中unicode字符
为什么有的sql语句前要加N,我查了下是:显式的将非unicode字符转成unicode字符,这样做的作用是什么?为什么要进行转换呢?请各位大侠帮忙说下!谢谢

------解决方案--------------------
支持国际化客户端的数据库应始终使用 Unicode 数据
纯字符英语的 用 非 Unicode 

最简单的就是 存放 汉字、韩文 等用 Unicode 。纯英文单词的或单个字符的用 非 Unicode 

------解决方案--------------------
防止乱码?让支持中文。
------解决方案--------------------
探讨
防止乱码,在有中文的sql语句里面加N吗?是在从程序里面传到数据库里面执行的时候会出乱码么?net话是在ado.net传到数据库里面,中文会出乱码,所以加的N吗?

------解决方案--------------------
简单的理解就是防止出现乱码。加上没有坏处。
------解决方案--------------------
n是代表unicode,这个主要用于你的应用程序需要支持国际语言,Unicode能存放目前所有语言。不然的话你存一个繁体都会乱码。但是n开头的数据类型存储空间是没有n的两倍,所以建议在需要的时候才使用。另外。在对n开头的所有操作,比如insert时的value里面、where子句中,都要加上N'xxx'这样的类型。