Oracle导出导入dmp等文件类型的多表数据的常用方法、遇见的常见问题和解决办法(exp无效sql???)

使用PLSQL执行导出表数据的时候有两种方法

1、使用Oracle命令【imp--exp】【impdp--expdp】

但是如果你的本机没有安装有Oracle数据库,使用的instant client远程连接服务器上的Oracle数据库时候,你没有Oracle数据库带有的exp.exe、imp.exe等扩展文件,所以你运行的时候多半也出现无效sql的错误,例如我用PLSQL导出表数据的时候就发生了类似的错误

2、使用PLSQL dev的导入导出表工具

导出表工具有有三种导出方式

  1. Oracle导出需要有导出可执行文件、需要下载Oracle数据库,数据库中的可执行文件(太麻烦了,而且Oracle数据库和instant client混合使用可能出现别的错误,如环境混乱啥的)
  2. SQL插入的方式:但是当你的表里面有BLOB类型的数据的时候,你的表数据估计也无法正常导出。
  3. PLSQL Devloper 方式导出也可能会出现错误,如ORA-03130 要求提取一下段缓冲区啥的错误,可能是Oracle配置出现问题

 以上两种方法均不能正常使用时我们的解决办法

1、找到远程连接数据库的服务器。使用服务器上的Oracle数据库,然后使用exp和imp命令导入导出表数据

2、表备份

select 'creat table ' || table_name || '_beifen as select * from ' || table_name ||';'  from user_tables t where t.TABLE_NAME like 'ACT_%'

批量生成要备份表的生成表语句,在这个过程中可能会出现你的表名过长而失败的语句,这些语句需要你自己重新处理下。

然后在生成批量插入语句,将原表的数据插入导新的备份表中,后面不需要这些备份表的时候再做删除。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李仙桎

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值