早教吧 育儿知识 作业答案 考试题库 百科 知识分享

sqlserver中@column=N'Title'这个大写的N是做什么用的declare@columnassysnameset@column=‘HireDate’selectEmployee,Title,BirthDate,HireDatefromHumanResources.Employeeorderbycasewhen@column=N'Title'.问题是@column=N'Title'中这

题目详情
sql server中@column=N'Title'这个大写的N是做什么用的
declare @column as sysname
set @column=‘HireDate’
select Employee,Title,BirthDate,HireDate from HumanResources.Employee
order by
case when @column=N'Title'.
问题是@column=N'Title'中这个大写的N是做什么用的
▼优质解答
答案和解析
加上 N 代表存入数据库时以 Unicode 格式存储.
N'Title' 表示Title是个Unicode字符串
Unicode 字符串的格式与普通字符串相似,但它前面有一个 N 标识符(N 代表 SQL-92 标准中的国际语言 (National Language)).N 前缀必须是大写字母.例如,'Michél' 是字符串常量而 N'Michél' 则是 Unicode 常量.Unicode 常量被解释为 Unicode 数据,并且不使用代码页进行计算.Unicode 常量确实有排序规则,主要用于控制比较和区分大小写.为 Unicode 常量指派当前数据库的默认排序规则,除非使用 COLLATE 子句为其指定了排序规则.Unicode 数据中的每个字符都使用两个字节进行存储,而字符数据中的每个字符则都使用一个字节进行存储.有关更多信息,请参见使用 Unicode 数据.
Unicode 字符串常量支持增强的排序规则