暂无图片
EXPDP问题,导出SCHEMA下所有表并按条件导出
我来答
分享
Thomas
2022-12-07
EXPDP问题,导出SCHEMA下所有表并按条件导出

如题,SCHEMA ABC下所有的表都有字段xyz, 现在要导出ABC下所有表,并按字段xyz进行筛选,即xyz='001'的记录才导出,不需要导出trigger,procedure,grant,comment和statistics。现在的写法是:expdp .....tables=(ABC.t1,ABC.t2.....) query=(ABC.t1:"where xyz='001'",ABC.t2:"where xyz='001'".....)

tables=()和query=()括号里的表名,必须先select table_name from dba_tables where owner='ABC';获得。感觉这种写法比较繁琐,能否实现同样功能,改写为:

expdp.... schema=ABC, include=xxx,exclude=xxxx,包括query那里,无须指定具体表名而是针对所有表写一个where xyz='001'?

我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
哇哈哈

用select from dba_tables where owner='ABC’直接把expdp。。。。。。的命令拼出来,保存到shell里面跑批
或者
直接 QUERY=“WHERE xxxxx” 举例,"需要转义

expdp abc/abc schemas=abc REUSE_DUMPFILES=y QUERY='"WHERE ID=1"' 。。。。。 . . exported "ABC"."T1" 5.867 KB 128 rows . . exported "ABC"."T2" 5.875 KB 129 rows . . exported "ABC"."T3" 5.875 KB 129 rows 。。。。 expdp abc/abc schemas=abc REUSE_DUMPFILES=y 。。。。。 . . exported "ABC"."T1" 6.742 KB 256 rows . . exported "ABC"."T2" 6.757 KB 258 rows . . exported "ABC"."T3" 6.757 KB 258 rows 。。。。
复制
暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
Oracle
2022-12-07
Oracle

学习了

暂无图片 评论
暂无图片 有用 0
打赏 0
Thomas

我知道,哇哈哈一出手,必有所得,query还有这种简单写法,受教了。

暂无图片 评论
暂无图片 有用 0
打赏 0
游湖

学习

暂无图片 评论
暂无图片 有用 1
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
oracle跨站点rac
回答 2
主要对网络质量要求比较高,如果不是业务必须,只是为了构建跨机房灾备环境,建议搭建DG/ADG环境。
postgresql有Oracle的nvl函数吗?
回答 1
已采纳
么有但是有类似的 coalesce
白求恩如何出一个月前的报告
回答 1
暂时不支持指定时间段来采集,建议通过定时任务每月或者每周采集一次。
各位大佬,请教个问题,Oracle给一个用户授权查询所有表权限是不是grant select any table to user;就可以了。
回答 2
sys的一些表还不行。如果需要查询sys,还需要grantselectcatalogrole。因为O7DICTIONARYACCESSIBILITY参数默认值falsh,但这个参数不建议调整
Oracle exp导出分区表报错:EXP-00006: 出现内部不一致的错误 ,EXP-00000: 导出终止失败
回答 1
已采纳
exp的bug吧,使用exp到11g的新特性间隔分区表时报EXP00006:出现内部不一致的错误。如果无法登录oracle所在的服务器用expdp导出,应该就只能备份了吧
ORACLE用户密码怎么改不了?
回答 3
先startup
oracle数据库,如何导入blob字段?请指教。
回答 1
我以前写过一个存储过程。先建立表,然后要用到这个的dbmslob.fileopen(bfileloc,0);具体要查查去了。
精简制备磁盘组,ASM如何释放存储空间
回答 2
在我的知识洗脚盆里面是没有的不过可以用,加入新的小磁盘,删除旧的大磁盘的方式逐步进行替换类似参考https://www.modb.pro/db/108074
Oracle通过什么方式减少PL/SQL程序的单元迭代数量和迭代时间?
回答 1
已采纳
任何涉及循环逻辑的PL/SQL程序单元都可能存在大幅提高性能的空间。可以通过两种方式来改善这种类型程序的潜在性能。第一种方法是在保持功能性结果不变的前提下通过逻辑重构来减少迭代的次数;第二种方法是减少
Oracle19C rac,同样sql语句,两个节点执行计划不一样的原因,怎么预防?
回答 8
已采纳
原因:数据分布不均,系统负载差异,统计信息未更新或不一致,并行度设置一直,确保Oracle实例版本一致解决:定期更新统计信息;使用绑定变量而不是硬编码值可以确保SQL语句被优化器视为同一查询,从而可能