如题:
oracle导出某用户下的所有表的数据结构、视图名称、函数名称、存储过程名称、对应表空间把这些内容导出成xml文件

解决方案 »

  1.   

    用sql development 直接操作导出
      

  2.   

    sql development 是什么 pl/ql??
      

  3.   


    dbms_metadata.get_xml
    通过这个函数,可以看到创建表的语句,三个参数,第一个代表表,第二个是表名,第三个是表所在的用户名--a. 获取单个的建表和建索引的语法
    set heading off;
    set echo off;
    Set pages 999;
    set long 90000;spool DEPT.sql
    select dbms_metadata.get_xml('TABLE','DEPT','SCOTT') from dual;  
    select dbms_metadata.get_xml('INDEX','DEPT_IDX','SCOTT') from dual;
    spool off;b.获取一个SCHEMA下的所有建表和建索引的语法,以scott为例:
      
    set pagesize 0
    set long 90000
      
    set feedback off
      
    set echo off  
    spool scott_schema.sql  
    connect scott/tiger;
    SELECT DBMS_METADATA.GET_XML('TABLE',u.table_name)
       FROM USER_TABLES u;
    SELECT DBMS_METADATA.GET_XML('INDEX',u.index_name)
       FROM USER_INDEXES u;
    spool off;c. 获取某个SCHEMA的建全部存储过程的语法
      
    connect brucelau /brucelau;
      
    spool procedures.sql
      
    select
    DBMS_METADATA.GET_XML('PROCEDURE',u.object_name)
    from
    user_objects u
      
    where
    object_type = 'PROCEDURE';
      
    spool off; 
      

  4.   

    oracle的一个工具啊,plsql development,不会不知道吧?
      

  5.   

    或者 object browser也可以
      

  6.   

    plsql development导出用户对象