加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

从整个Oracle DB获取DDL的有效方法

发布时间:2021-03-31 10:41:25 所属栏目:站长百科 来源:网络整理
导读:今朝,Oracle 11.1数据库中约莫有30个表. 有没有步伐用一个呼吁天生全部ddl? (可能一些呼吁?) 编辑: 按照下面的提议,我试过: SELECT dbms_metadata.get_ddl( 'TABLE',table_name,owner ) FROM all_tables; 获得了: ORA-31603: object "HS_PARTITION_COL_

今朝,Oracle 11.1数据库中约莫有30个表.

有没有步伐用一个呼吁天生全部ddl? (可能一些呼吁?)

编辑:
按照下面的提议,我试过:

SELECT dbms_metadata.get_ddl( 'TABLE',table_name,owner )
  FROM all_tables;

获得了:

ORA-31603: object "HS_PARTITION_COL_NAME" of type TABLE not found in schema "SYS"
ORA-06512: at "SYS.DBMS_SYS_ERROR",line 105
ORA-06512: at "SYS.DBMS_METADATA",line 3241
ORA-06512: at "SYS.DBMS_METADATA",line 4812
ORA-06512: at line 1
31603. 00000 -  "object "%s" of type %s not found in schema "%s""
*Cause:    The specified object was not found in the database.
*Action:   Correct the object specification and try the call again.

很明明,我不相识dbms_metadata有一些很是根基的对象.

办理要领

这对我有效:

SELECT dbms_metadata.get_ddl('TABLE',table_name)
  FROM user_tables;

假如这是错误的,请低估我.我对Oracle知之甚少,以是我不大白为什么没有一个谜底只是提供了一个有用的查询.

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读