Quando si utilizza SQLcl con Oracle Database, è possibile impostare SQLFORMAT
per insert
per produrre i risultati della query come INSERT
dichiarazioni.
Esempio
Ecco un esempio da dimostrare:
SET SQLFORMAT insert;
SELECT * FROM regions;
Risultato:
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.
Giusto per essere chiari, ecco i risultati della query quando si utilizza ansiconsole
:
SET SQLFORMAT ansiconsole;
SELECT * FROM regions;
Risultato:
REGION_ID REGION_NAME ____________ _________________________ 1 Europe 2 Americas 3 Asia 4 Middle East and Africa
Esporta in un file
Se hai bisogno di salvare il INSERT
istruzioni in un file, puoi usare SPOOL
comando per esportare i risultati in un file.
SET SQLFORMAT insert;
SPOOL '/Users/barney/data/insert_regions.sql';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole;
Che ha esportato il risultato in un file chiamato insert_regions.sql
nella posizione specificata.
Una volta che la query è stata esportata in un file, ho impostato SPOOL
per off
e SQLFORMAT
a ansiconcole
.
Ecco come appare il file risultante:
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.
Rimuovi feedback
Puoi rimuovere il X rows selected
con SET FEEDBACK off
:
SET SQLFORMAT insert;
SET FEEDBACK off;
SELECT * FROM regions;
SET FEEDBACK on;
SET SQLFORMAT ansiconsole;
Risultato:
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');
In questo caso ho attivato FEEDBACK
riattivare dopo aver esportato il file e impostare SQLFORMAT
torna a ansiconsole
.