广告
返回顶部
首页 > 资讯 > 数据库 >dbms_metadata怎么用
  • 893
分享到

dbms_metadata怎么用

2024-04-02 19:04:59 893人浏览 安东尼
摘要

小编给大家分享一下dbms_metadata怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! dbms_metadata包中的get_ddl函数 1.得到一个表或索引的ddl语句

小编给大家分享一下dbms_metadata怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

dbms_metadata包中的get_ddl函数

1.得到一个表或索引的ddl语句

SELECT DBMS_METADATA.GET_DDL('TABLE','DEPT','SCOTT') FROM DUAL;

select dbms_metadata.get_ddl('INDEX','PK_DEPT','SCOTT') from dual;

2.得到一个用户下的所有表,索引,存储过程的ddl

SELECT DBMS_METADATA.GET_DDL(U.OBJECT_TYPE, u.object_name) 
FROM USER_OBJECTS u 
where U.OBJECT_TYPE IN ('TABLE','INDEX','PROCEDURE');

存储过程:查看 存储过程 的定义语句

sql> SET LONG 9999 
SQL> select dbms_metadata.get_ddl('PROCEDURE','ANALYZEDB','NEWCCS') from dual; 
  CREATE OR REPLACE PROCEDURE "NEWCCS"."ANALYZEDB" 
IS 
   CURSOR get_ownertable 
   IS 
      SELECT table_name 
        FROM user_tables; 
   ownertable   get_ownertable%ROWTYPE; 
BEGIN 
   OPEN get_ownertable; 
   LOOP 
      FETCH get_ownertable 
       INTO ownertable; 
      EXIT WHEN get_ownertable%NOTFOUND; 
      EXECUTE IMMEDIATE    'analyze table ' 
                        || ownertable.table_name 
                        || ' compute statistics for table for all indexes for all indexed  columns'; 
   END LOOP; 
EXCEPTio
   WHEN OTHERS 
   THEN 
      RaiSE; 
END;

3.得到所有表空间的ddl语句

SELECT DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name) 
FROM DBA_TABLESPACES TS;

4.得到所有创建用户的ddl

SELECT DBMS_METADATA.GET_DDL('USER',U.username) 
FROM DBA_USERS U;

================================================================================

9i  中可以利用DBMS_METADATA.GET_DDL包得到数据库的对象的ddl脚本。如下(SQLPLUS中执行):

a. 获取单个的建表、视图和建索引的语法

set pagesize 0 
set long 90000 
set feedback off 
set echo off 
spool DEPT.sql 
select dbms_metadata.get_ddl('TABLE','TAB_NAME','SCOTT') from dual; 
select dbms_metadata.get_ddl('VIEW','VIEW_NAME','SCOTT') from dual; 
select dbms_metadata.get_ddl('INDEX','IDX_NAME','SCOTT') from dual; 
spool off; 
   
b.获取一个SCHEMA下的所有建表、视图和建索引的语法,以scott为例: 
  
set pagesize 0 
set long 90000 
set feedback off 
set echo off 
spool schema.sql 
connect scott/tiger; 
SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name) FROM USER_TABLES u; 
SELECT DBMS_METADATA.GET_DDL('VIEW',u.VIEW_name) FROM USER_VIEWS u; 
SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name) FROM USER_INDEXES u; 
spool off;

c.    获取某个SCHEMA的建全部存储过程的语法 
  
set pagesize 0 
set long 90000 
set feedback off 
set echo off 
spool procedures.sql  
select   DBMS_METADATA.GET_DDL('PROCEDURE',u.object_name) from     user_objects u where     object_type = 'PROCEDURE'; 
spool off;

d.    获取某个SCHEMA的建全部函数的语法 
  
set pagesize 0 
set long 90000 
set feedback off 
set echo off 
spool function.sql  
select   DBMS_METADATA.GET_DDL('FUNCTION',u.object_name) from     user_objects u where     object_type = 'FUNCTION'; 
spool off;

看完了这篇文章,相信你对“dbms_metadata怎么用”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网数据库频道,感谢各位的阅读!

您可能感兴趣的文档:

--结束END--

本文标题: dbms_metadata怎么用

本文链接: https://www.lsjlt.com/news/65009.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • dbms_metadata怎么用
    小编给大家分享一下dbms_metadata怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! dbms_metadata包中的get_ddl函数 1.得到一个表或索引的ddl语句 ...
    99+
    2022-10-19
  • Oracle Study之案例--DBMS_METADATA Package应用
    Oracle Study之案例--DBMS_METADATA Package应用DBMS_METADATA:      The DBMS_METADATA ...
    99+
    2022-10-18
  • chkdsk怎么用
    chkdsk是一个Windows命令行工具,用于检查和修复文件系统错误。以下是使用chkdsk命令的一些常见用法:1. 打开命令提示...
    99+
    2023-09-15
    chkdsk
  • mac怎么用
    这篇文章将为大家详细讲解有关mac怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。篇一、Mac的常用快捷键在一些 Apple 自己的键盘上,通常顶行中会有特殊按键,有音量图标、显示屏亮度图标和其他功能...
    99+
    2023-06-05
  • sitemesh怎么用
    这篇文章给大家分享的是有关sitemesh怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一,基本概念1,Sitemesh是一种页面装饰技术 : 1  :它通过过滤器(filte...
    99+
    2023-06-08
  • sed怎么用
    这篇文章给大家分享的是有关sed怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。例如,在多个系统、应用程序安装之后,我们往往需要对很多配置文件进行修改,用vi编辑器意味着耗费时间、重复劳动,而sed就可将我们...
    99+
    2023-06-09
  • Vim怎么用
    这篇文章主要为大家展示了“Vim怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vim怎么用”这篇文章吧。安装在 Ubuntu 中可以使用如下命令来安装 Vim:sudo apt-get i...
    99+
    2023-06-13
  • memtest怎么用
    要使用Memtest进行内存测试,您需要按照以下步骤进行操作:1. 下载Memtest软件:您可以从Memtest官方网站(http...
    99+
    2023-09-17
    memtest
  • chatGPT怎么用
    chatGPT使用的方法:1、登录chatgpt官网;2、按照步骤完成账号注册;3、注册完成后登陆,按自身需求调节白天黑夜模式;4、...
    99+
    2023-02-08
    chatGPT
  • Postman怎么用
    这篇文章主要介绍Postman怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、什么是 Postman(前世今生)Postman 诞生于 2013 年,一开始只是 Abhinav Asthana 着手于解决 A...
    99+
    2023-06-21
  • Ncat怎么用
    这篇文章主要为大家展示了“Ncat怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Ncat怎么用”这篇文章吧。Ncat 是用于在网络上读取,写入,重定向和加密数据的通用命令行工具。它旨在成为...
    99+
    2023-06-27
  • MongoDB怎么用
    小编给大家分享一下MongoDB怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中...
    99+
    2023-06-27
  • Entity怎么用
    这篇文章主要介绍了Entity怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Entity怎么用文章都会有所收获,下面我们一起来看看吧。Entity是基于JPA规范。更详细的技术细节请参考JPA或Hiber...
    99+
    2023-06-26
  • crontab怎么用
    小编给大家分享一下crontab怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Linux crontab是用来定期执行程序的命令,当安装完成操作系统之后,默...
    99+
    2023-06-27
  • 怎么用Dapper
    本文小编为大家详细介绍“怎么用Dapper”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么用Dapper”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。dapper除了支持基础的CURD、存储过程以外,还支持操...
    99+
    2023-06-29
  • megui怎么用
    Megui是一个视频转码软件,用于将视频文件转换为其他格式。以下是使用Megui的一般步骤:1. 下载和安装Megui软件:可以在M...
    99+
    2023-09-17
    megui
  • java怎么用
      本次来跟大家聊聊关于Java安装后如何使用的问题。我第一次接触Java时也是一头雾水,本以为安装了Java这款软件就能直接开始Java编程,其实不然,还要搭建小小的开发条件。推荐教程:Java入门视频教程1、首先安装jdk  这里先说明...
    99+
    2018-01-07
    java教程 java
  • 怎么用redis
    这篇文章运用简单易懂的例子给大家介绍怎么用redis,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。安装redis后,在命令行输入“redis-cli"回车输入”auth pa...
    99+
    2022-10-18
  • redis怎么用
    这篇文章将为大家详细讲解有关redis怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。redis什么时候用● Redis使用最佳方式是全部数据in-memory。● ...
    99+
    2022-10-18
  • mysqldump怎么用
    这篇文章主要介绍了mysqldump怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 一、创建表并导入数据 ...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作