Oracle11g 如何在oracledb中提取序列ddl

Oracle11g 如何在oracledb中提取序列ddl,oracle11g,extract,ddl,Oracle11g,Extract,Ddl,在此查询中尝试使用此函数提取序列的ddl时出现问题: select dbms_metadata.get_dependent_ddl('SEQUENCE', base_object_name) from dual; select dbms_metadata.get_dependent_ddl('INDEX', base_table_name) from dual; base_object_name—使用序列的触发器的名称。 结果:ora-31604对象类型“序列”的无效名称参数名称“基本对象名

在此查询中尝试使用此函数提取序列的ddl时出现问题:

select dbms_metadata.get_dependent_ddl('SEQUENCE', base_object_name) from dual;
select dbms_metadata.get_dependent_ddl('INDEX', base_table_name) from dual;
base_object_name—使用序列的触发器的名称。 结果:ora-31604对象类型“序列”的无效名称参数名称“基本对象名称”

例如,当我执行此查询时:

select dbms_metadata.get_dependent_ddl('SEQUENCE', base_object_name) from dual;
select dbms_metadata.get_dependent_ddl('INDEX', base_table_name) from dual;
结果,我为指定的表创建了索引


请提供帮助,如何使用
get_dependent_ddl()
函数提取序列ddl?

序列不依赖于触发器。它是一个独立的对象,不需要其他对象才能存在。改为在DBMS_元数据上使用子程序:

select dbms_meta_data.get_ddl('SEQUENCE',sequence_name) from dual

序列不依赖于表,因此您需要使用
选择dbms_元数据
检索其ddl。

谢谢,我知道不显示任何结果的
get_ddl()
函数。我确实有序列,为了确保该命令正常工作,我尝试使用错误的序列名称,上面的命令显示未找到该序列。但如果名称正确,我看不到任何结果。请帮助。@lupchiazoem您的序列可能在不同的模式中?
dbms\u metadata.get\u ddl
函数还接受默认为调用者模式的
schema
参数。可能是,将检查并告知。▲