在oracle中,使用DBMS_METADATA包中的GET_DDL函数来获得对应对象的定义语句。GET_DDL函数的定义如下:

DBMS_METADATA.GET_DDL (
object_type IN VARCHAR2,
name IN VARCHAR2,
schema IN VARCHAR2 DEFAULT NULL,
version IN VARCHAR2 DEFAULT 'COMPATIBLE',
model IN VARCHAR2 DEFAULT 'ORACLE',
transform IN VARCHAR2 DEFAULT 'DDL')
RETURN CLOB;

对于每个参数的含义说明如下:

  • OBJECT_TYPE —对象类型
  • NAME —对象名称
  • SCHEMA —对象所在的Schema,默认为当前用户所在Schema
  • VERSION —对象原数据的版本
  • MODEL —原数据的类型默认为ORACLE
  • RETURNS: 对象的原数据默认以CLOB类型返回
set pagesize 0
set long 90000
set feedback off
set echo off
spool c_index.sql
查询用户下,某个索引的定义
select dbms_metadata.get_ddl('INDEX','INDEX_NAME','SCHEMA') FROM dual;
spool off;
查询某用户下,所有索引的定义
SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name) FROM USER_INDEXES u;
所有用户的创建DLL
SELECT DBMS_METADATA.GET_DDL('USER',U.username) FROM DBA_USERS U;
所有表的DLL
SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name) FROM USER_TABLES u;
所有表空间的DLL
SELECT DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name) FROM DBA_TABLESPACES TS;
组合一下,所有表,索引存储过程
SELECT DBMS_METADATA.GET_DDL(U.OBJECT_TYPE, u.object_name) FROM USER_OBJECTS u where U.OBJECT_TYPE IN ('TABLE','INDEX','PROCEDURE');


												

最新文章

  1. Java中的队列Queue,优先级队列PriorityQueue
  2. MongoDB驱动之Linq操作
  3. ExecutorService与Executors例子的简单剖析
  4. MVC——数据库增删改查(aspx)
  5. html px em pt长度单位(像素 相对长度 点)知识(转)
  6. CFileDialog 打开文件夹文件 保存文件夹文件
  7. 飞信免费邮件api,飞信界面
  8. Dev环境中的集成测试用例执行时上下文环境检查(实战)
  9. 【转】如何实现Flex页面跳转
  10. 使用C# (.NET Core) 实现状态设计模式 (State Pattern)
  11. 2018—自学Selenium+Python 笔记(二)
  12. Docker Data Center系列(三)- DTR安装指南
  13. 【XSY1081】随机存储器 网络流
  14. 【1】【leetcode-77】 组合
  15. 【转】关于提示can't load package 'xxx.bpl.' 错误问题的解决方法
  16. 记账本微信小程序开发七
  17. C++获取工程路径、exe路径
  18. POJ 2250 Compromise【LCS】+输出路径
  19. appium自动化测试(四)
  20. Mysql之数据库操作

热门文章

  1. spring mvc + xmlHttpRequest2.0 实现无刷新上传文件,带进度条和剩余时间
  2. Tarjan水题系列(1):草鉴定Grass Cownoisseur [USACO15JAN]or[luogu P3119]
  3. 高效编程之 多线程Event
  4. 通过编写串口助手工具学习MFC过程——(十)UpdateData()用法和编辑框的赋值、取值
  5. linux目录结构详细补充
  6. ECMAScript(ES) 6 之 let 与 const
  7. 简单Spring Cloud 微服务框架搭建
  8. Thinking in Annotation
  9. eclipse多个项目提交到同一个仓库(码云)
  10. GUI学习之十五——QAbstractSpinBox学习总结