为什么我会犯这个错误
过程需要类型为"ntext/nchar/nvarchar"的参数"@statement".
当我试着用sp_executesql
的时候?
为什么我会犯这个错误
过程需要类型为"ntext/nchar/nvarchar"的参数"@statement".
当我试着用sp_executesql
的时候?
听起来像是在用VARCHAR语句调用sp_executesql,而它需要是NVARCHAR.
e、 g.这将产生错误,因为@SQL需要是NVARCHAR
DECLARE @SQL VARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL
所以:
DECLARE @SQL NVARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL