oracle中一个数据库表怎么把另一个数据库表中的最新信息添加过来,用DBLINK实现?求高手?

oracle中一个数据库表怎么把另一个数据库表中的最新信息添加过来,用DBLINK实现?求高手?,第1张

oracle中一个数据库表通过另一个数据表的数据同步最新数据采用dblink的方法:

1.首先创建一个dblink,可以访问远程数据库

2.在本地创建一个快照,映射远程数据表,当远程数据表有变化时,会反应到快照中.

3.由于快照类似于视图表,所以在本地为快照创建一个触发器,当快照有变化时,会触发相应事件.

4.在触发器中写同步数据的代码。

以下是触发器代码:

createorreplacetriggerTRI_test_user_AFR

afterinsertorupdateordeleteonsn_test_user

foreachrow

begin

if deleting then

deletefromtest_userwhereid=:old.id

endif

if inserting then

insertintotest_user(id,name,age)

values(:new.id,:new.name,:new.age)

endif

if updating then

updatetest_usersetname=:new.name,age=:new.agewhereid=:old.id

endif

endTRI_test_user_AFR

在远程数据库创建dblink,然后使用

insert into table_name(col_name1,col_name2,.....) select col_name1,col_name2,..... from table_name2@dblink_Name

DBLink 的作用是在局域网内,通过一台服务器上面的数据库访问另外一台服务器上面数据库的功能。

下面简单的介绍DBLink的配置:

服务器A:IP 192.168.1.10, 数据库实例名:orcl 数据库登录:test/test

服务器B:IP 192.168.1.1,   数据库实例名:orcl 数据库登录:user/user

在A服务器上的数据库可以访问服务器B的数据库时就需要用到dblink

请点击输入图片描述

首先打开plsql,选择到DbLink

请点击输入图片描述

有点点击new,进入编辑界面,分别输入dblink的名称,需要链接到另外一个数据库的用户名、密码、实例名等信息。填写核对无误后点击左下角的apply,进行保存。这样你的第一个dblink就创建好了

请点击输入图片描述

当然还可以直接用语句创建dblink。create public database link MyFirstDblink connect to user identified by "123456" USING '192.168.1.1/orcl'

请点击输入图片描述

语句创建好后,选中这条语句,点击执行按钮,或者F8快捷键保存。

请点击输入图片描述

这时候就可以使用查询语句啦,在表名称后面加@字符,便会自动出现你添加的DBLINK名称

请点击输入图片描述

当然还可以使用更新、删除语句啦。是不是很简单呢,有了dblink *** 作别人的数据库就更简单啦

请点击输入图片描述


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6645173.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存