我試圖執行一個EXEC連接鏈接服務器,但它不能使用表變量。使用鏈接服務器時必須聲明標量變量@Table執行代碼
有沒有解決這個問題?
我的代碼:
DECLARE @Table TABLE(
ID VARCHAR(8),
DATA DATE,
DIA VARCHAR(2),
MES VARCHAR(2),
ANO VARCHAR(4)
)
INSERT INTO @Table SELECT * FROM LOCALTABLE
EXEC ('INSERT INTO SERVER2TABLE SELECT * FROM ' + @Table) AT SERVER2;
錯誤:
Must declare the scalar variable "@Table".
我的服務器:
SQL Server 2008中使用MySQL ODBC 5.1驅動的MySQL R2 LINKED SERVER 5.6.8
請參閱[Martin Smith的答案](http://stackoverflow.com/questions/4626292/how-to-use-table-variable-in-a-dynamic-sql-statement),如果您想要互動在EXEC語句的內部和外部使用您的表變量。 –
請清楚地更新你的問題,你的問題和評論說不同 – TheGameiswar
修復了這個問題。謝謝 – saulob