我几乎在每个论坛上都寻找过这个主题,但没有找到令人信服的解决方案。我正在使用 SQL Developer,这就是我卡住的地方。
我有 1000 多个表,我想在另一个 AUDIT 表中的每个表上捕获 CRUD 操作。
例如,表 A 有列(a1,a2,a3)
,表 B 有列(b1,b2,b3)
。现在,如果在表 A 中插入和/或更新记录,触发器将在 AUDIT 表中插入该记录,其中包含表名、列名及其值
(table ,col, value)
AUDIT TABLE 将有此记录 - ( table A, a2, 'xyz')
。表 B 的程序相同。
我有一个想法,使用包含所有表列表的元表。然后是元表上的触发器,但这听起来有点愚蠢而且非常复杂。
对不起,这是我的第一篇文章,所以格式不好。请帮忙。