想飞就别怕摔

大爷的并TM骂人

oracle db_link 和触发器实现不同数据库表的同步

---创建dblink,dblink_test名称,(被同步数据库的a_test)ST10766用户名,ep密码,ass100连接字符串
create public database link dblink_test
   connect to ST10766 identified by ep
   using 'ass100';

---删除dblink
----drop public database link dblink_test;

----建立表
create table a_test (id int,name varchar(20),pass varchar(20))
select * from a_test;

insert into a_test (id,name,pass) values (1,'zzn','shanshan')
insert into b_test (id,username,password) values('1','zxl','xiaolan')

----在目的数据库上,测试dblink,查询的是源数据库的表
select * from a_test@dblink_orc10; 
select * from a_test;

----创建触发器

create or replace trigger a_b_test
  after  insert or update or delete
  on a_test
  for each row
begin
  if deleting then
      delete from b_test where id=:old.id;
  end if;
  if inserting then
      insert into b_test(id,username,password)  //b_test表的字段
      values(:new.id,:new.name,:new.pass); //a_test表的字段
  end if;
  if updating then
     update b_test set username=:new.name,password=:new.pass where id=:old.id;
  end if;
end a_b_test;

posted on 2009-05-06 15:45 生命的绽放 阅读(2597) 评论(0)  编辑  收藏 所属分类: 数据库


只有注册用户登录后才能发表评论。


网站导航:
 
<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

导航

统计

常用链接

留言簿(5)

随笔分类(94)

随笔档案(93)

文章分类(5)

文章档案(5)

相册

JAVA之桥

SQL之音

兄弟之窗

常用工具下载

积分与排名

最新评论

阅读排行榜