这可能是一个noob问题,但我找到了一些T-SQL查询示例来验证数据库大小SELECT
和WHERE
子句here
以下是代码:
SELECT name, size, size*1.0/128 AS [Size in MBs]
FROM sys.master_files
WHERE name = N'mytest';
我的问题是N
子句中WHERE name = N'keyword'
前缀的含义是什么?
我之前总是使用WHERE name = 'keyword'
,但我找不到差异(您可以自己尝试)。
我用Google搜索了,但我不知道我应该搜索的关键字
答案 0 :(得分:4)
它将字符串声明为nvarchar数据类型(Unicode),而不是varchar(8位编码,包括ASCII)。
仅供参考,这是问题的重复: What is the meaning of the prefix N in T-SQL statements?
答案 1 :(得分:2)
N表示给定字符串中可能有一些unicode字符。
答案 2 :(得分:1)
来自docs: -
您可能已经看过使用传递字符串的Transact-SQL代码 一个N前缀。 这表示后续字符串是Unicode格式 (N实际上代表国家语言字符集。)哪个 表示您传递的是NCHAR,NVARCHAR或NTEXT值 反对CHAR,VARCHAR或TEXT。
答案 3 :(得分:1)
这意味着unicode。请参阅http://msdn.microsoft.com/en-us/library/bb399176.aspx要将字符串文字声明为Unicode,请在文字前面加上大写的“N”