0
我正在使用SQL Server 2012,我需要通過執行帶有動態參數值的存儲過程將結果存儲到臨時表中。通過在SQL中使用帶有動態參數的OPENROWSET存儲過程來將結果獲取到temptable中?
下面我顯示我的代碼,雖然我執行的代碼,我得到一個錯誤,所以這可能得到輸出動態參數,而執行存儲過程在openrowset
或類似的東西?
SET @sql = N'SELECT * INTO #TempStamp_Status
FROM OPENROWSET(''SQLNCLI'',
''Admin-SERVER\SQLEXPRESS'' ; ''sa'' ; ''123456''
''SET NOCOUNT ON;SET FMTONLY OFF;exec
RDS_DS.dbo.Qry_GetParticipationDetails ' + cast(@ResidentId AS
NVARCHAR(10)) + ',''' +CAST(@StartDate AS NVARCHAR(100)) +''','''
+CAST(@EndDate AS NVARCHAR(100)) +''')''';
當我執行這個SQL查詢,我得到這個錯誤:
Msg 102, Level 15, State 1, Line 5
Incorrect syntax near 'SET NOCOUNT ON;SET FMTONLY OFF;exec RDS_DS.dbo.Qry_GetParticipationDetails 52,'
在此先感謝
嗨,這個答案執行全成,但我怎樣讓這個不是Temptable結果,我想SELECT * FROM#TempStamp_Status,但我得到「消息208,級別16,狀態0,第23行 無效的對象名稱#TempStamp_Status'。」 – Shankar
您可以像使用'SELECT * INTO TempStamp_Status'一樣使用真實表格而不是臨時表格,或者您可以使用像'## TempStamp_Status'這樣的全局臨時表格 –
感謝您的幫助,您的答案正在成功運行 – Shankar