分类: 数据库开发技术
2010-12-07 10:38:10
在SQL语句中,String前出现的N''标示,作用是著名被标注的字符串是Unicode编码。一般情况下都表明你试图将NCHAR, NVARCHAR or NTEXT 的值类型转换为(或复值到) CHAR, VARCHAR or TEXT中。
另外,有些SQL系统存储过程的参数需要用Unicode编码的值作为参数。
如果当你输入
EXEC sp_ExecuteSQL 'SELECT 1' |
Server: Msg 214, Level 16, State 2, Procedure sp_executesql, Line 1 Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'. |
-- (a) using the N prefix EXEC sp_ExecuteSQL N'SELECT 1' -- (b) using a variable DECLARE @sql NVARCHAR(100) SET @sql = N'SELECT 1' EXEC sp_ExecuteSQL @sql |