再用exp导出tele_success表的数据,导入到后一个数据库中。
解决方案 »
- 如何让oracle并发执行同一个存储过程呢(参数不同)?
- oracle存储过程,输出参数为数组的问题?看在圣诞节苦苦钻研的份上,救命啊~~
- 两个问题
- mysql-->oracle数据迁移问题!!!
- 求助,面试的时候碰到两道难题,高人指点一下
- 100分求个简单的存储过程!!!急!
- 请问如何在存储过程中调用大表复制命令?----急,在线等
- ORACLE高手救命啊。。。。。。。。。。。
- 为什么在win2000下装了oracle9i后用system,manager无法进入?
- ORACLE在JOB里执行定时清理CDC变更集的存储过程
- 俺是新手,请大家推荐些oracle经典书籍吧。谢谢大家
- 聊天帖。祝大家新春快乐!
create table tele_success as select * from tele_success1;
而且导入的时候提示tele_success表已经存在,我现在的问题是要保持两个表数据的一致。我是两台服务器,有一台服务器数据丢失,我要把它从另一台中恢复出来
试试这个,导出可以带参数:exp scott/tiger tables=emp query=\"where job=\'SALESMAN\' and sal\<1600\"
2、exp user/password@database1 table=temptable file=backup.dmp
3、imp user/password@database2 ignore=y file=backup.dmp
应该没问题了。
导入到数据库b后tele_success1不能完全取代tele_success,会让
流失部分数据。
2、insert到表中也要考虑到可能会有部分更新数据,不是仅仅insert
就能达到结果的。
3、如果有可能的话, 还是把tele_success表重新导出再导入到数据
库b比较好。
忘记加条件子句了,不好意思。
SELECT * INTO temptable FROM tele_success where 条件
提示:违反唯一约束条件
数据库A中
tele_success有记录1,2,3,4,5
根据条件选出的表tele_success1有记录 3,4,5
数据库B中(可能为旧数据)
tele_success的记录1,2,3,4
你导入表之后tele_success1有记录3,4,5(与A是一样的)
你想要达到的结果是A、B数据库中tele_success表中数据一致。如果你在B中用
insert into tele_success select * from tele_success1的话
那么显然3,4记录重复,不允许insert的。
如果你在B中用
drop table tele_success;
create table tele_success as select * from tele_success1;的话
那么B中tele_success表只有记录3,4,5,不符合你的要求。
这次明白了吗?我还是建议你重新导出数据库A中的表tele_success
然后导入到B中。
你肯定tele_success1 tele_success这两个表中没有主键一样的吗?