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

Recuperar dados clob grandes usando sqlplus


1) Primeira mesa e clob.
create table large_clob(a clob);
insert into large_clob values( dbms_xmlgen.getXml('select * from dba_objects'));

2) Execute o código no sqlplus
set linesize 32767 long 2000000000 longchunksize 32767 PAGESIZE 0 FEEDBACK OFF ECHO OFF TERMOUT OFF
Spool output_file.txt
  select a from large_clob;
spool off

A descrição de todas as variáveis ​​está aqui
  • long 2000000000 - especifica quantos bytes de CLOB devem ser recuperados. (2 GB é o máximo)
  • linesize tamanho da linha (32k é o máximo). tamanho da linha. Se a linha exceder o tamanho , a linha será quebrada para a próxima linha
  • longchunksize 32k - clob será recuperado em pedaços, onde o tamanho do pedaço é 32k
  • PAGESIZE 0 - desfazer a formatação da página de resultados
  • FEEDBACK,ECHO,TERMOUT - desativar tudo isso.
  • Spool redirecionar a saída para output_file.txt