sqlserver N .......select N'Ø';

 
加上 N 代表存入数据库时以 Unicode 格式存储。
N'string' 表示string是个Unicode字符串

Unicode 字符串的格式与普通字符串相似,
但它前面有一个 N 标识符(N 代表 SQL-92 标准中的国际语言 (National Language))。
N 前缀必须是大写字母。例如,'Michél' 是字符串常量而 N'Michél' 则是 Unicode 常量。
Unicode 常量被解释为 Unicode 数据,并且不使用代码页进行计算。
Unicode 常量确实有排序规则,主要用于控制比较和区分大小写。
为 Unicode 常量指派当前数据库的默认排序规则,除非使用 COLLATE 子句为其指定了排序规则。
Unicode 数据中的每个字符都使用两个字节进行存储,而字符数据中的每个字符则都使用一个字节进行存储。
有关更多信息,请参见使用 Unicode 数据。

Unicode 字符串常量支持增强的排序规则。



NCHAR
根据 Unicode 标准所进行的定义,用给定整数代码返回 Unicode 字符。

语法
NCHAR ( integer_expression ) 

参数
integer_expression

介于 0 与 65535 之间的所有正整数。如果指定了超出此范围的值,将返回 NULL。

返回类型
nchar(1)

示例
A. 使用 NCHAR 和 UNICODE
下面的示例使用 UNICODE 和 NCHAR 函数打印字符串 Køenhavn 第二个字符的 UNICODE 值和 NCHAR(Unicode 字符),并打印实际的第二个字符ø。

DECLARE @nstring nchar(8)
SET @nstring = N'København'
SELECT UNICODE(SUBSTRING(@nstring, 2, 1)), 
   NCHAR(UNICODE(SUBSTRING(@nstring, 2, 1)))
GO

下面是结果集:

----------- - 
248         ø(1 row(s) affected)

B. 使用 SUBSTRING、UNICODE、CONVERT 和 NCHAR
下面的示例使用 SUBSTRING、UNICODE、CONVERT 和 NCHAR 函数打印字符串 Køenhavn 的字符数、Unicode 字符以及每个字符的 UNICODE 值。


DECLARE @position int, @nstring nchar(9)
SET @position = 1
SET @nstring = N'København'
PRINT 'Character #' + ' ' + 'Unicode Character' + ' ' + 'UNICODE Value'
WHILE @position <= DATALENGTH(@nstring)
   BEGIN
   SELECT @position, 
      NCHAR(UNICODE(SUBSTRING(@nstring, @position, 1))),
      CONVERT(NCHAR(17), SUBSTRING(@nstring, @position, 1)),
      UNICODE(SUBSTRING(@nstring, @position, 1))
   SELECT @position = @position + 1
   END
GO

下面是结果集:

Character # Unicode Character UNICODE Value
                                          
----------- ----------------- ----------- 
1           K                 75          
                                          
----------- ----------------- ----------- 
2           ø                 248         
                                          
----------- ----------------- ----------- 
3           b                 98          
                                          
----------- ----------------- ----------- 
4           e                 101         
                                          
----------- ----------------- ----------- 
5           n                 110         
                                          
----------- ----------------- ----------- 
6           h                 104         
                                          
----------- ----------------- ----------- 
7           a                 97          
                                          
----------- ----------------- ----------- 
8           v                 118         
                                          
----------- ----------------- ----------- 
9           n                 110         
                                          
----------- ----------------- ----------- 
10          (null)            (null)      
                                          
----------- ----------------- ----------- 
11          (null)            (null)      
                                          
----------- ----------------- ----------- 
12          (null)            (null)      
                                          
----------- ----------------- ----------- 
13          (null)            (null)      
                                          
----------- ----------------- ----------- 
14          (null)            (null)      
                                          
----------- ----------------- ----------- 
15          (null)            (null)      
                                          
----------- ----------------- ----------- 
16          (null)            (null)      
                                          
----------- ----------------- ----------- 
17          (null)            (null)      
                                          
----------- ----------------- ----------- 
18          (null)            (null)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值