Używając SQLcl z bazą danych Oracle, możesz ustawić SQLFORMAT
insert
aby wyprowadzić wyniki zapytania jako INSERT
oświadczenia.
Przykład
Oto przykład do zademonstrowania:
SET SQLFORMAT insert;
SELECT * FROM regions;
Wynik:
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.
Dla jasności, oto wyniki zapytania przy użyciu ansiconsole
:
SET SQLFORMAT ansiconsole;
SELECT * FROM regions;
Wynik:
REGION_ID REGION_NAME ____________ _________________________ 1 Europe 2 Americas 3 Asia 4 Middle East and Africa
Eksportuj do pliku
Jeśli potrzebujesz zapisać INSERT
instrukcji w pliku, możesz użyć SPOOL
polecenie, aby wyeksportować wyniki do pliku.
SET SQLFORMAT insert;
SPOOL '/Users/barney/data/insert_regions.sql';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole;
To wyeksportowało wynik do pliku o nazwie insert_regions.sql
w określonej lokalizacji.
Po wyeksportowaniu zapytania do pliku ustawiłem SPOOL
do off
i SQLFORMAT
do ansiconcole
.
Oto jak wygląda wynikowy plik:
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.
Usuń opinię
Możesz usunąć X rows selected
z SET FEEDBACK off
:
SET SQLFORMAT insert;
SET FEEDBACK off;
SELECT * FROM regions;
SET FEEDBACK on;
SET SQLFORMAT ansiconsole;
Wynik:
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');
W tym przypadku włączyłem FEEDBACK
ponownie po wyeksportowaniu pliku i ustaw SQLFORMAT
powrót do ansiconsole
.