Ao usar SQLcl com Oracle Database, você pode definir
SQLFORMAT para insert para gerar os resultados da consulta como INSERT declarações. Exemplo
Segue um exemplo para demonstrar:
SET SQLFORMAT insert;
SELECT * FROM regions; Resultado:
REM INSERTING into REGIONS SET DEFINE OFF; Insert into REGIONS (REGION_ID,REGION_NAME) values (1,'Europe'); Insert into REGIONS (REGION_ID,REGION_NAME) values (2,'Americas'); Insert into REGIONS (REGION_ID,REGION_NAME) values (3,'Asia'); Insert into REGIONS (REGION_ID,REGION_NAME) values (4,'Middle East and Africa'); 4 rows selected.
Apenas para esclarecer, aqui estão os resultados da consulta ao usar o
ansiconsole :SET SQLFORMAT ansiconsole;
SELECT * FROM regions; Resultado:
REGION_ID REGION_NAME
____________ _________________________
1 Europe
2 Americas
3 Asia
4 Middle East and Africa Exportar para um arquivo
Se você precisar armazenar o
INSERT instruções em um arquivo, você pode usar o SPOOL comando para exportar os resultados para um arquivo. SET SQLFORMAT insert;
SPOOL '/Users/barney/data/insert_regions.sql';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole; Isso exportou o resultado para um arquivo chamado
insert_regions.sql no local especificado. Depois que a consulta foi exportada para um arquivo, configurei
SPOOL para off e SQLFORMAT para ansiconcole . Aqui está a aparência do arquivo resultante:
REM INSERTING into REGIONS SET DEFINE OFF; Insert into REGIONS (REGION_ID,REGION_NAME) values (1,'Europe'); Insert into REGIONS (REGION_ID,REGION_NAME) values (2,'Americas'); Insert into REGIONS (REGION_ID,REGION_NAME) values (3,'Asia'); Insert into REGIONS (REGION_ID,REGION_NAME) values (4,'Middle East and Africa'); 4 rows selected.
Remover comentários
Você pode remover o
X rows selected com SET FEEDBACK off :SET SQLFORMAT insert;
SET FEEDBACK off;
SELECT * FROM regions;
SET FEEDBACK on;
SET SQLFORMAT ansiconsole; Resultado:
REM INSERTING into REGIONS SET DEFINE OFF; Insert into REGIONS (REGION_ID,REGION_NAME) values (1,'Europe'); Insert into REGIONS (REGION_ID,REGION_NAME) values (2,'Americas'); Insert into REGIONS (REGION_ID,REGION_NAME) values (3,'Asia'); Insert into REGIONS (REGION_ID,REGION_NAME) values (4,'Middle East and Africa');
Neste caso eu virei
FEEDBACK depois de exportar o arquivo e defina SQLFORMAT de volta ao ansiconsole .