create database link tosql2k connect to cyx identified by cyx using 'sql2k'; 建立dblink,然后就可以像同一个数据库一样操作, insert into user select * from user@tosql2k; insert into wage select * from wage@tosql2k
如果是在同一台电脑上的不同用户之间的话可以这样写: insert into user select * from UserB.user如果是不同电脑上不同用户之间的话,可以根据服务名来进行定位 先配置服务名进行数据库连接 insert into user select * from UserB.user@服务名 where ……
建立dblink,然后就可以像同一个数据库一样操作,
insert into user select * from user@tosql2k;
insert into wage select * from wage@tosql2k
insert into user select * from UserB.user如果是不同电脑上不同用户之间的话,可以根据服务名来进行定位
先配置服务名进行数据库连接
insert into user select * from UserB.user@服务名 where ……
user表的id是取序列得到的,那么在挪新记录的话user表的id新生成,那么wage表的user_id如何相应的也改成新user记录的id值呢?
但是有前提条件就是
1.dest database的两个表里面没有重复ID的数据
2.你的dest database没有对于这两个表的insert时的利用sequence来生成id的trigger如果以上两个条件都不符合你就只能用stored procedure来实现了 里面根据你的业务需求加入逻辑来判断遇到重复数据该怎么处理这其实是一个最典型的database archiving的例子 如果自己不想写可以找一些archiving工具来实现
我推荐你使用FlexNet Archiving 最新版本1.3.0.2
hoho
做一下广告
我就是在这儿遇到点困难。