pl/sql如何导出表的create语句或者insert语句

    这篇文章主要介绍如何使用pl/sql导出表的建表语句或者表数据。

    首先我使用:

   

Tools-->Export Tables...

   选择全部表,直接导出,没想到马上报错了

  

    大意是blob,clob字段不能导出为sql文件,而是想把用户那些表有clob,blob字段找出来,参考了文章:

   http://www.thatjeffsmith.com/archive/2011/08/finding-tables-having-columns-of-specific-datatypes/

    Sys用户使用:

   

 

select owner, table_name,DATA_TYPE from dba_tab_cols x
where X.DATA_TYPE in('CLOB','BLOB')
and owner='TMD'

    结果为:

   

   普通用户使用:

  

select table_name,DATA_TYPE from user_tab_cols where DATA_TYPE in('CLOB','BLOB')

    结果为:

   

    导出这些有blob,clob字段的方法为:

   

Tools-->Export Tables...-->选择含有blob,clob字段的表-->选择PL/SQL Developer标签-->选择路径-->Export

   

 

 

    普通其他表的导出方法为:

    

Tools-->Export Tables...-->选择普通表(可多选)-->选择SQL Inserts标签-->选择路径-->Export

    这里啰嗦下:

   

    使用Export Tables导出的是有数据的,即有insert语句,可以选择create tables把建表语句带上。

    可以后选择表,可选择多个表。

    drop tables导出的结果有drop table语句

    create tables导出结果有create table语句。

    其他的一样,我一般不勾选include storage和include privileges选项,对结果也没什么影响。

    

    如果只想要建表语句呢?

   

Tools-->Export User Objects...-->选择表-->选择路径-->Export

    

       

     这里导出的只是create语句,没有数据。谢谢。

    全文完。

    

   

猜你喜欢

转载自53873039oycg.iteye.com/blog/2020459
今日推荐