如何以及在何处在oracle数据库中存储元数据?

时间:2017-05-02 11:08:05

标签: sql database oracle database-design triggers

我的Oracle 12c数据库中有多个业务表,如下所示:

Table A { col_A1, col_A2, ..., created, last_updated }
Table B { col_B1, col_B2, ..., created, last_updated }
...

这些表除了事实之外没有任何共同点,每一行在创建和上次更新时都存储了值。

我个人认为这是糟糕的设计,就像在网络中一样,多个协议必须定义IP和端口字段以解决目标。

我想要的是什么 创建 last_updated 列不应出现在我的任何业务表中。我仍然希望为每个表中的每一行存储这些值。

我的想法:创建一个表(比如说META_TABLE)来存储创建的 last_updated 引用原始行的ROWID 。为每个业务表创建触发器 AFTER UPDATE AFTER INSERT 以填充META_TABLE。

我不喜欢这个:为每个创建的表和我将来必须创建的每个表创建触发器。

如何解决这个问题?提前谢谢。

0 个答案:

没有答案