私はIBMDB2データベースを使用しています。テーブルにトリガーを作成しました。トリガー内から、トリガーがどのテーブルにあるかを知る必要があります。何かアイデアはありますか?ありがとう!
質問する
887 次
1 に答える
0
私の知る限り、DB2 LUW には「現在実行中のトリガー」の名前を格納するシステム変数がないため、これを動的に実行できるかどうかはわかりません。ただし、トリガー名をトリガーにハードコードすると、
Declare trigger_schema varchar(128) default '<PutTriggerSchemaHere>';
Declare trigger_name varchar(128) default '<PutTriggerNameHere>';
トリガーの本体。
Declare schema_name varchar(128) default NULL;
Declare table_name varchar(128) default NULL;
SELECT TABSCHEMA, TABNAME INTO schema_name, table_name
FROM SYSCAT.TRIGGERS
WHERE TRIGSCHEMA=trigger_schema and TRIGNAME=trigger_name
FETCH FIRST ROW ONLY;
お役に立てれば。
于 2012-08-13T22:54:28.630 に答える