Tol*_*a E 7 sql database oracle ddl triggers
我知道我可以用它来创建DDL创建触发器;
CREATE OR REPLACE TRIGGER
create_table_trigger
AFTER CREATE ON SCHEMA
DECLARE
BEGIN
END;
Run Code Online (Sandbox Code Playgroud)
问题是这个触发器会在"创建序列"之类的DDL上运行; 我怎样才能为'创建表'DDL执行此操作?
Ric*_*iwi 15
CREATE OR REPLACE TRIGGER
create_table_trigger
AFTER CREATE ON SCHEMA
BEGIN
IF SYS.DICTIONARY_OBJ_TYPE = 'TABLE' THEN
....
END;
Run Code Online (Sandbox Code Playgroud)
有关EVENT属性的列表,请参阅此页面
http://ist.marshall.edu/ist480adbp/plsql_triggers.html(链接已关闭)
据我所知,dictionary_obj_type是TABLE | SEQUENCE | PROCEDURE | INDEX | FUNCTION | TYPE | PACKAGE之一
而dictionary_obj_name只是表/序列/ proc/etc的名称.