Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Semikolon fehlt nach dem Extrahieren von DDL über das ksh-Skript

Sie müssen die SQLTERMINATOR-Einstellung ändern von seinem Standardwert false auf true, was Sie mit einem anonymen PL/SQL-Block vor Ihrer Abfrage tun können:

BEGIN
  DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,
    'SQLTERMINATOR', true);
END;
/
SELECT DBMS_METADATA.GET_DDL('TABLESPACE','$srcTablespace') FROM DUAL;

Oder Sie können die exec verwenden SQL*Plus-Kurzschrift, aber der gesamte Aufruf muss in einer einzigen Zeile stehen.

Siehe die dbms_metadata Dokumentation für mehr über set_transform_param Verfahren.