Oracle 利用触发器在2个数据库之间同步进行update
我有2个数据库DB1和DB2,DB1中有表:学生(字段:学号,姓名,地址),DB2中有表:成绩(字段:学号,平时成绩,考试成绩),我想写一个触发器:当我updateDB1...
我有2个数据库DB1和DB2,DB1中有表:学生(字段:学号,姓名,地址),DB2中有表:成绩(字段:学号,平时成绩,考试成绩),我想写一个触发器:当我update DB1中的学号时,DB2里面的学号也会同步update,请问应该如何写这个触发器?
展开
2个回答
展开全部
--先在2个DB之间建立dblink,然后可参考以下代码进行编写:
--说明:一般的更新都是增删改3个操作,我这只写了改的操作给你作参考。
Create Trigger tri_testabc
After Update On tb_student_db1 For Each Row
Declare
Begin
If updating Then
Update tb_score_db2@dblink Set
tb_score_db2.stu_id = :New.stu_id
Where tb_score_db2.tud_id = Old.sut_id;
End If;
Exception
When Others Then
--异常处理
Null;
End;
--说明:一般的更新都是增删改3个操作,我这只写了改的操作给你作参考。
Create Trigger tri_testabc
After Update On tb_student_db1 For Each Row
Declare
Begin
If updating Then
Update tb_score_db2@dblink Set
tb_score_db2.stu_id = :New.stu_id
Where tb_score_db2.tud_id = Old.sut_id;
End If;
Exception
When Others Then
--异常处理
Null;
End;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询