最近我想在试验弄个备份数据库 在同一个用户表空间中有一个表history我想做一个备份,于是我建了一个新表history1 结构和a一样,然后导出数据:exp abc/abc file=1.dmp log=1.log tables=history FEEDBACK=100000成功导出 但我想用imp导入到history1不成功,问了几个人 有人说imp默认不支持导入到其他表的 但有人说可以 请问那个是对的 并求一个可以导入的语句把我的导出数据导入到新表history1 中,由于我是初学者,很多不会,请大家帮忙一下,写一个可以导入的语句让我可以学习一下 ,非常感谢!!!
解决方案 »
- 怎样把Oracle 的DMP文件导入SQL Server 数据库?
- plsql改变入参问题
- 急救!追加oracle数据库,要copy哪些初始化参数文件?
- sql loader入库时能查询吗?
- update dept set dname=dname+'xxxxxxxxx' where deptno=10;
- 关于oracle中的sequence的问题
- 乱码!高手请进
- VB的ADO对象+ODBC对oracle插入数据错误
- WINDOWS XP切换用户登录后不能使用原用户安装的ORACLE 客户端,怎么办
- 在pro*c中如何判断oracle数据库中是否存在指定的表!
- 如何让blob字段存储非十六进制的字符
- 帮忙解释下oracle执行计划的含义
====================================
确实
exp user1/passwd file=1.dmp tables='history'
imp user2/passwd file=1.dmp fromuser=user1 touser=user2
然后以user2登录rename history to history1
注意该用户必须有DBA权限。2.在A用户下IMP:imp A/xxx file=... full=y ignore=y这样即可把原history表的数据IMP导入history1表中。
将数据库中原有的history改名为history1, alter table history rename to history1;
之后再imp, imp abc/abc file=1.dmp log=1.log tables=(history);
我用过好多次都好用的。
如果一定要放到新表中去,其实这个create table history1 as select * from history;最适合你本情况.创建同义词的方法,如果你把表建在其它用户之下是可以的,同一用户下已经有一个表名与之相同了,是不行的.其实真的不知道你想要干什么,如果只是为了备份,完全可以进行逻辑备份,即把它exp出来就行了,当需要的时候再导回去.