이 오류가 발생하는 이유
Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'.
sp_executesql을 사용하려고 할 때?
이 오류가 발생하는 이유
Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'.
sp_executesql을 사용하려고 할 때?
답변:
NVARCHAR이 필요할 때 VARCHAR 문으로 sp_executesql을 호출하는 것처럼 들립니다.
예를 들어 @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