Oracle

如何在Oracle中生成沒有主鍵和外鍵的創建表腳本

  • April 8, 2014

我有很多模式和表。我想生成我所有表的創建腳本。我正在使用以下語句,它執行良好。

SELECT DBMS_METADATA.GET_DDL('TABLE','table_name','schema') FROM DUAL

但是這個語句也會生成所有屬於表的主鍵和外鍵腳本。那麼,有沒有辦法在創建表腳本中不包含主鍵和外鍵

您可以嘗試以下方法:

set pagesize 0
set long 90000 

exec DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
exec DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM, 'CONSTRAINTS',false);
exec DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM, 'REF_CONSTRAINTS',false);

SELECT DBMS_METADATA.GET_DDL( 'TABLE','table_name','schema') FROM DUAL;

這應該會導致 DDL 沒有任何索引和外鍵。

參考:

引用自:https://dba.stackexchange.com/questions/62734