2

SSIS を使用して動的エクスポートを構築しようとしています。

TableName変数-stringを設定し、パッケージにスコープを設定しました。必要なテーブル名を見つけるためにSQLタスクを設定し、結果セットを上記の変数にマップしました。(このタスクは正常に完了します)

次に、別の変数をSQL("SELECT * FROM [CRDATA].[dbo]."+@[User::TableName])-string として追加し、パッケージにスコープを設定して、データフロー タスクを設定しました。データフロー内に OLEDB ソースを追加し、SQL 変数への入力を設定して、上記の変数を選択しました。このタスクは失敗します。エラーは次のとおりです。

Error at Data Flow Task [OLE DB Source [1]]: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E14.
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0
 Hresult: 0x80040E14  Description: "Statement(s) could not be prepared..
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0  
Hresult: 0x80040E14  Description: "Incorrect syntax near '+'..
------------------------------
ADDITIONAL INFORMATION:

Exception from HRESULT: 0xC0202009 (Microsoft.SqlServer.DTSPipelineWrap)

SQL タスク、データフローで遅延検証を true に設定し、OLEDB Source プロパティでvalidatemetadatatoを設定しました。false

SQL 変数を間違えたような気がします。ここで何か助けていただければ幸いです。

4

0 に答える 0