Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
この項では、イベントフックプロシージャの設計と使用におけるいくつかの注意事項について説明します。
イベントフックプロシージャでは、COMMIT 操作も ROLLBACK 操作も実行しないでください。プロシージャは同期と同じ接続で実行されるので、COMMIT または ROLLBACK を実行すると同期が妨害されます。
フック内の接続設定を変更する場合は、設定を以前の値に復元してから、フックを終了してください。設定を復元しないと、予期しない結果になる場合があります。
dbmlsync は、ストアドプロシージャを、所有者で識別せずに呼び出します。したがって、ストアドプロシージャは、dbmlsync 接続で使用されるユーザ名、またはユーザがメンバーであるグループのどちらかで所有されている必要があります。
MANAGE REPLICATION システム権限を持つユーザが作成できるフックプロシージャ。ただし、フックによる情報のやり取りに使用される #hook_dict table にフックがアクセスできることを確認するには、フックが次のいずれかの要件を満たしている必要があります。
SELECT ANY TABLE および UPDATE ANY TABLE システム権限を持つユーザが所有します。
CREATE PROCEDURE 文の SQL SECURITY INVOKER 句を使用して定義されます。
#hook_dict テーブルイベントフックプロシージャ用の接続イベントフックプロシージャ内でのエラーと警告の処理