当前位置: 代码迷 >> Oracle管理 >> !待!两oracle数据库对同一张表update
  详细解决方案

!待!两oracle数据库对同一张表update

热度:356   发布时间:2016-04-24 06:19:40.0
!!!在线等待!!两oracle数据库对同一张表update
数据库1:sdsb 
用户名:sdsb 
用户密码:sdsb
表:myemp

数据库2:sdsb2
用户名:sdsb2 
用户密码:sdsb2
表:myemp

其中sdsb2是通过导入sdsb备份dmp文件建成的,两数据库里,表、表结构完全相同。
现在sdsb里,表myemp(empid,empname)里,empname丢数据了,我想将恢数据库(sdsb2)
中的myemp.empname update到sdsb里。
只修改empname,而不是全部删除再粘贴。因为表里有其他外键,删除不了。
而且,只手动修改这一次即可,而不需要动态更新。。。。。。

------解决方案--------------------
SQL code
建立DBLINK,来解决!
------解决方案--------------------
两个数据库有建DBLink的话直接更新就好了,update myemp o set o.ename=(select p.ename from myemp@DBLINKNAME p where o.empid=p.empid and rownum=1) where o.ename is null;
楼主既然这样问没建DBLink的可能性比较大,那就从sdsb2中把myemp的数据全部导出来放到sdsb中的临时表myemp_temp中再更新,update myemp o set o.ename=(select p.ename from myemp_temp p where o.empid=p.empid and rownum=1) where o.ename is null;
  相关解决方案