一次处理任务,突然发现自己不会用pl/sql的导入导出,尴尬。 记录下使用方法。
文章目录
- 导出
- oracle 导出
- sql插入
- pl/sql developer
- 导入
- 其他
- 导出表结构
- 根据查询条件导出
- 导出不同用户的数据
- 导入可以切换用户么
- pl/sql 查询结果的导出为什么这么快
导出
入口有2个:
表上右键 | 导出数据(默认选中右键的表)。
工具 | 导出表(默认不选中表)。
oracle 导出
导出dmp二进制格式的文件,可跨平台,还能包含权限,效率不错,用的最为广泛。
注(开始我还纳闷为什么导出的exe文件,原来弄错了):
\dbhome_1\bin\exp.exe
这个不是输出文件,是执行的命令文件。
输出文件是下面的这个。
sql插入
导出sql格式的文件,可用文本编辑器查看,通用性好。数据量不多,可以用这个。
pl/sql developer
导出pde格式的文件,文本编辑器不能查看,只能用pl/sql developer导入导出。
导入
工具 | 导入表 | 3种导入方式选择对应文件即可。
其他
导出表结构
可以导出表结构么,当然可以。
sql 插入模式下, 勾选 创建表 | where子句 填写 where 1=0 | 选文件导出即可。
根据查询条件导出
必须可以啊。
where子句输入 条件sql即可。
导出不同用户的数据
切换用户,上面的表列表就会切换,勾选导出即可。 不用去对象列表切换了。
导入可以切换用户么
目前没发现可以。 默认是当前用户。
pl/sql 查询结果的导出为什么这么快
例如10万数据,而且列很多,也是一两秒就导出了,这也太快了吧。
其实正常,因为在执行查询的时候,数据已经放到本地了,导出只是根据不同格式来转换并保存下而已。
查询的时候列如果多的话,很影响速度,是pl/sql会把结果下载到本地,如果多的话很定慢了。