1
exec dbms_metadata.set_transform_param(DBMS_METADATA.SESSION_TRANSFORM, 'CONSTRAINTS_AS_ALTER', TRUE);
SELECT DBMS_METADATA.GET_DDL(object_type, object_name, owner) FROM all_OBJECTS WHERE
OWNER = 'USERNAME' AND OBJECT_TYPE = 'TABLE';
当我运行这些命令时,不幸的是我得到每个表后面的alter语句。我宁愿为我的所有表生成DDL,然后用alter语句来设置约束。目前,alter语句运行并失败,因为被引用的表尚未创建。如何正确使用CONSTRAINTS_AS_ALTER作为GET_DDL?
我看到这个命令:
select dbms_metadata.get_ddl('CONSTRAINT',constraint_name) from user_constraints;
但使用该不会我必须以某种方式告诉GET_DDL
不产生在所有的任何约束?
有什么方法可以按照正确的顺序创建表格吗?
谢谢!