如何在不使用触发器的情况下动态地将数据从一个表插入另一个表?

时间:2013-09-03 14:19:27

标签: oracle plsql

我有两个表格,分别是tab_1和tab_2。 现在每当我在tab_1上编写插入命令时,数据也应该插入到tab_2中。 我该如何实现这一功能?

3 个答案:

答案 0 :(得分:2)

您可以使用多个INSERT statement

insert all
  into table1 (col1, col2, col4)
   values (col1, col2, col4)
  into table2 (col1, col2, col3, col4)
   values (col1, col2, col3, col4)
select col1, col2, col3, col4
  from some_other_table

答案 1 :(得分:0)

我喜欢简单的事情。我相信真正的MVC,并将保存添加到模型中的第二个表,并在每次在数据层中保存任何内容时调用模型。

在模型中保存到第一个表,如果第一个表成功则保存到第二个表。这就是我保存到本地设备和api服务器的方式。运作良好,没有任何问题。

答案 2 :(得分:0)

要删除的触发器应如下所示:

create or replace trigger <trigger_name>
after delete on table1 for each row
declare
begin
delete from table2 where key_column = :old.key_column
end;

:old.key_column将是当前从table1中删除的行的键值。