1
nvarchar 매개 변수가있는 저장 프로 시저가 있습니다. OPENROWSET을 사용하여 반환 된 테이블을 가져 오려고합니다. 나는 다음과 같은 코드를 사용할 때하지만 결과는OpenRowSet의 유니 코드 쿼리
Declare @ID int
Declare @sql nvarchar(max)
Declare @p1 nvarchar(8)
Set @ID=1
Set @sql='SELECT *
FROM OPENROWSET(
''SQLNCLI'',
''DRIVER={SQL Server};'',
''EXEC dbo.usp_test @p1 =''''' + @p1 + ''''')'
Exec(@sql)
OPENROWSET은 VARCHAR 내 쿼리를 변환하고 제대로 내 프로 시저를 실행하지 않는 잘못된 것입니다. 는 OPENROWSET이처럼 내 코드를 실행 것으로 보인다 :
exec dbo.usp_test @p1='????????'
그래서 결과가 올바르지 않습니다. 내 문제를 해결하기 위해 OPENROWSET에 옵션이 있습니까? 당신이
nvarchar
데이터를 사용하는 경우
'Set @ sql = N'SELECT * .... '-이 방법이 효과가 있습니까? –
nope. 당신의 해결책이 작동하지 않습니다. –
@sheykholeslam :'... @ p1 = N '' '' '+ ...' –