TABLE 変数を sp_executesql プロシージャに渡そうとしています。
DECLARE @params NVARCHAR(MAX)
SET @params = '@workingData TABLE ( col1 VARCHAR(20),
col2 VARCHAR(50) )'
EXEC sp_executesql @sql, @params, @workingData
エラーが発生します:
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'TABLE'.
「TABLE」以降のカラム指定を省略してみました。また、テーブルを動的 SQL 内の変数として宣言しようとしました。しかし、運が悪い...
このプロシージャでは、TABLE 変数をパラメータとして渡すことは許可されていないようです。ところで: MSSQL2008 R2 を実行しています。
別のプロシージャから作業データをロードするため、#workingData のようなローカル一時テーブルの使用には興味がありません。
INSERT INTO @workingData
EXEC myProc @param1, @param2
私は一時変数に直接行うことはできません(そうですか?)...
どんな助けでも大歓迎です!