日期:2014-05-17  浏览次数:21223 次

sql语句中的‘N' 'U'是什么意思?
select U'中文' from dual;

select N'中文' from dual;


语句中的N以及U分别代表什么意思?

好像是类似于字符集之类的东西,但是却查不到相关的资料,求解释~

------解决方案--------------------
U 应该代表UTF-8
N 应该代表NCHAR
------解决方案--------------------
N 在这里表示 Unicode,就是双字节字符。对于西文字符,用一个字节来存储过足够了,对于东方文字字符,就需要两个字节来存储。Unicode 为了统一、规范、方便、兼容,就规定西文字符也用两个字节来存储。
也就是说加 N 就表示字符串用 Unicode 方式存储。

------解决方案--------------------
补充一句,对应的就是 NCHAR 和 NVARCHAR2 类型。

引用:
N 在这里表示 Unicode,就是双字节字符。对于西文字符,用一个字节来存储过足够了,对于东方文字字符,就需要两个字节来存储。Unicode 为了统一、规范、方便、兼容,就规定西文字符也用两个字节来存储。
也就是说加 N 就表示字符串用 Unicode 方式存储。