Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Ponto e vírgula ausente após extrair DDL via script ksh


Você precisa alterar a configuração SQLTERMINATOR de seu valor falso padrão para verdadeiro, o que você pode fazer com um bloco PL/SQL anônimo antes de sua consulta:
BEGIN
  DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,
    'SQLTERMINATOR', true);
END;
/
SELECT DBMS_METADATA.GET_DDL('TABLESPACE','$srcTablespace') FROM DUAL;

Ou você pode usar o exec Abreviação do SQL*Plus, mas toda a chamada deve estar em uma única linha.

Consulte os dbms_metadata documentação para saber mais sobre o set_transform_param procedimento.