恢复数据的问题!急! 再用exp导出tele_success表的数据,导入到后一个数据库中。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 insert into tele_success select * from tele_success1;ordrop table tele_success;create table tele_success as select * from tele_success1; 我要导出tele_success表中的部分数据 这个语句如何写呀 而且导入的时候提示tele_success表已经存在,我现在的问题是要保持两个表数据的一致。我是两台服务器,有一台服务器数据丢失,我要把它从另一台中恢复出来 首先,我觉得teles1.dmp文件是不能直接导入到tele_success中的。你可以从tele_success1向tele_success insert.其次:试试这个,导出可以带参数:exp scott/tiger tables=emp query=\"where job=\'SALESMAN\' and sal\<1600\" 怎样删除一个表 delete tablename 好像只能删除数据 1、在第一台服务器(有数据哪台)建个临时表,表用下列语句创建SELECT * INTO temptable FROM tele_success.2、exp user/password@database1 table=temptable file=backup.dmp3、imp user/password@database2 ignore=y file=backup.dmp应该没问题了。 1、不要删除表,因为看你的意思是从tele_success用条件选择出来的tele_success1,则表tele_success1数据与tele_success不一样。导入到数据库b后tele_success1不能完全取代tele_success,会让流失部分数据。2、insert到表中也要考虑到可能会有部分更新数据,不是仅仅insert就能达到结果的。3、如果有可能的话, 还是把tele_success表重新导出再导入到数据库b比较好。 加上条件就是所要的部分数据。忘记加条件子句了,不好意思。SELECT * INTO temptable FROM tele_success where 条件 我现在用insert into tele_success select * from tele_success1;提示:违反唯一约束条件 举例来说:数据库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这两个表中没有重复记录。违反唯一约束条件的原因就只能是因为重复记录吗? 违反唯一性约束是指主键有重复.不是指整条记录重复.你肯定tele_success1 tele_success这两个表中没有主键一样的吗? Oracle,SQL语句中/*+ */是什么技术呢? oracle 学习怎么深入 PL/SQL中可不可以象MSSQL查询分析器那样在SQL WINDOW里写多行代码 一条SQL涉及几个表,速度很慢,怎么办? oracle不定期挂掉,急!!!!! undo表空间满了的影响insert语句的执行速度么 初学oracle的困惑??? 超级难题,OEM console的数据库项里面为什么只有一个数据库,我明明建了两个啊 ??? 为什么用insert 语句插入数据,数据长度只有4k左右? 关于number数据类型的疑问 俺是新手,请大家推荐些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这两个表中没有主键一样的吗?