SSISのOLEDBコマンドで簡単なクエリを実行しようとすると、説明できないエラーが発生します(下記参照)。SSIS OLEDBコマンドが失敗する - 不明なエラー
私のクエリはSQL Serverでうまく動作しますが、実行を簡単にするためにいくつかの調整を行いましたが、役に立たないようにしました。
DECLARE @Gender [nvarchar](6)
DECLARE @Ready [nvarchar](12)
DECLARE @DOB [datetime]
SET @Gender=?
SET @Ready=?
SET @DOB=?
IF @Gender = 'M'
SET @Gender='Male'
IF @Gender = 'F'
SET @Gender='Female'
IF @Ready='Y'
SET @DOB=NULL
INSERT INTO [dbo].[PHI_CLIENT_PROFILES]
([col43],
[col13],
[col22],
[col10],
[origin]
)
VALUES
(@DOB, @Gender, ?, ?, ?)
と、エラーメッセージ:
検証エラー。データフロータスク:データフロータスク:SSISエラーコード DTS_E_OLEDBERROR。 OLE DBエラーが発生しました。エラーコード: 0x80004005。 OLE DBレコードが利用可能です。出典:HRESULT「SQL Server用のMicrosoft OLE DB プロバイダー」:0x80004005の説明:「構文 エラーまたはアクセス違反」
パラメータマッピングタブには7つの変数がありますか? – billinkc
@billinkcいいえ私はそのエラーのためではない、paramページは* NOT *リフレッシュされます。私は100の異なる矛盾を試し、行ごとにコードを追加/削除したので、paramページは古くなっています(行ごとに1つのパラメタが表示されるため、1つのパラメータが表示されます)。コードを壊す前は、paramページには何も表示されませんでした – LearnByReading
@billinkcまた、変数の部分に問題があるように見えるようにしてください。 SSIS OLEDB COMMANは変数を受け入れますか?私は単純なコードを試してみましたが、うまくいきましたが、私はこの作業にはまったく新しいものです。 – LearnByReading