我正在使用IBM DB2数据库。我在表格中创建了一个触发器。我需要知道,从触发器内部,触发器所在的表中是什么。任何想法?谢谢!
答案 0 :(得分: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;
希望这有帮助。