2012-04-04 46 views
0

对于一些简单而短暂的查询,我一直在使用SSMS中的查询设计器,它具有以下有趣的行为:当我添加一个筛选器例如LIKE '%text here%'时,SSMS在前面添加字母N字符串的开始。使用SSMS设计查询的奇怪行为

它似乎并不影响查询,它会在没有它的情况下正常运行。任何人都知道为什么SSMS以这种方式生成查询?

+0

阅读[常量(Transact-SQL)]的前两个段落(http://msdn.microsoft.com/zh-cn/library/ms179899.aspx) – AakashM 2012-04-04 16:20:39

+2

快速搜索“sql string n”会显示也有很多答案。 – Cylindric 2012-04-04 16:22:29

回答

4

N'<your text here>'表示应将字符串视为unicode文本。它确实是安全的,以防需要unicode字符。

这是告诉T-SQL将值视为nvarchar而不是varchar数据的简短方式。

+0

问与答,谢谢,@yuck :)。将尽我所能接受。 – wootscootinboogie 2012-04-04 16:24:16