1

Informatica の PreSQL および postSQL が実行されません。

問題の説明:

Microsoft SQL サーバーにテーブルがあります。Stored Procedure Transformation を介して SP を呼び出し、Informatica powercenter セッションを使用してこのテーブルを更新/挿入しようとしています。しかし、それは起こっていません。さらに掘り下げた後、この背後にある理由は、更新/挿入しようとしているテーブルのトリガーであることがわかりました。テーブルにはいくつかのトリガーが定義されておりon inserton updateトリガーもあります。そのため、PreSQL でテーブルのすべてのトリガーを無効にし、実行中のセッションの postSQL で再度有効にすることを考えました。しかし、うまくいきません。ただし、Microsoft SQL サーバークライアントを介して DB でトリガー無効化ステートメントを直接実行し、セッションを実行すると、セッションはレコードを更新/挿入します。

以下は、私が使用した Presql および postSQL コマンドです。

BEGIN TRANSACTION
ALTER TABLE schemaname.tablename DISABLE TRIGGER ALL
commit;

BEGIN TRANSACTION
ALTER TABLE schemaname.tablename ENABLE TRIGGER ALL
commit;

どこかで間違っている場合/これに対する解決策がある場合はお知らせください。

4

1 に答える 1

0

あなたのSQLは、データベースに行く前にpowercenterによって解析されます。

サーバー構成を確認してください - 解析されていない SQL を送信するオプションがあるはずです。

于 2011-11-15T17:58:14.930 に答える