我正在尝试使用sqlPLUS中的SPOOL命令为数据库中的对象生成所有DDL
SET trimspool ON SET wrap off SET heading off SET linesize 300 SET echo off SET pages 999 SET long 90000 Col object_type format a10000 Col object_name format a10000 Col owner format a10000 spool export.out SELECT DBMS_MetaDATA.GET_DDL(object_type,object_name,owner) FROM all_OBJECTS WHERE OWNER = 'DMALM' and object_type not like '%PARTITION' and object_type not like '%BODY' and object_type not like '%LOB'; spool off quit
解决方法
使用word_wrapped怎么样?
SET trimspool ON SET heading off SET linesize 300 SET echo off SET pages 999 SET long 90000 set termout off column txt format a121 word_wrapped Col object_type format a10000 Col object_name format a10000 Col owner format a10000 spool export.out SELECT DBMS_MetaDATA.GET_DDL(object_type,owner)txt FROM all_OBJECTS WHERE OWNER = 'DMALM' and object_type not like '%PARTITION' and object_type not like '%BODY' and object_type not like '%LOB'; spool off quit