我已經使用臨時表加上臨時變量.. 現在,當我的sql查詢同時具有臨時變量和表時,我知道sp_executesql不工作,因爲我們不能在其中使用臨時表 並且標準執行不會採用可變參數。 因此,如果任何人都可以幫助我解決這個問題,那將會非常有用嗎?如何在sql查詢中使用參數(sp_executesql不按照需求工作)
這是一個示例代碼:
create procedure tryit
as begin
declare @temp as Table_Type;
declare @ghdhj as nvarchar(50)
set @ghdhj='TBVHTempSelectionTable';
declare @sqlstatement nvarchar(max);
set @sqlstatement=N'insert into @temp select * from '[email protected]+';';
exec sp_executesql @sqlstatement;
--,@temp='finalResultTable',@ghdhj='TBVHTempSelectionTable'
select * from @temp;
end
go
exec tryit
我們展示的代碼的sql語句內聲明的任何變量。 – 2015-02-12 05:26:44
我附上了一個示例代碼。 – Sarthak 2015-02-12 06:14:28
您可以將過程分爲兩部分 - 您可以輕鬆地將只讀表變量傳遞給'sp_executesql'和任何存儲過程。因此,如果您在'sp_executesql'內聲明表變量,則可以輕鬆地調用結果中的任何存儲過程。 – Luaan 2015-02-12 08:15:24