oracle触发器和存储过程的格式

最近接到一个任务要根据一个表来转移另一个表的数据到第三个表。想了想,用决定用触发器+存储过程的方式来做。有些时间没有写存储过程和触发器了,查了一下资料,确定了oracle的触发器和存储过程的格式。
触发器的格式如下:
CREATE [OR REPLACE] TRIGGER trigger_name
{BEFORE | AFTER }
{INSERT | DELETE | UPDATE [OF column [, column …]]}
[OR {INSERT | DELETE | UPDATE [OF column [, column …]]}...]
ON [schema.]table_name | [schema.]view_name 
[REFERENCING {OLD [AS] old | NEW [AS] new| PARENT as parent}]
[FOR EACH ROW ]
[WHEN condition]
PL/SQL_BLOCK | CALL procedure_name;
 

 

存储过程的格式如下:
CREATE OR REPLACE PROCEDURE proc_name
(
    Parameter1,
    Parameter2
    ......
) IS
var1 ;
var2 ;
......
BEGIN
PL/SQL_BLOCK 
END proc_name

 

由于还有在两个不同的表中转移数据,所以数据都可以 还有用到两个表复制语句,oracle提供了 SELECT INTO 和 INSERT INTO SELECT ,UPDATE SELECT语句用于表复制操作。
折腾了几下,任务完成了。
posted @ 2013-11-06 10:46  Be a programer  阅读(428)  评论(0编辑  收藏  举报