Когато използвате SQLcl с Oracle Database, можете да зададете SQLFORMAT
за insert
за да изведете резултатите от заявката като INSERT
изявления.
Пример
Ето пример за демонстрация:
SET SQLFORMAT insert;
SELECT * FROM regions;
Резултат:
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.
Само за да е ясно, ето резултатите от заявката при използване на ansiconsole
:
SET SQLFORMAT ansiconsole;
SELECT * FROM regions;
Резултат:
REGION_ID REGION_NAME ____________ _________________________ 1 Europe 2 Americas 3 Asia 4 Middle East and Africa
Експортиране във файл
Ако трябва да съхраните INSERT
изрази във файл, можете да използвате SPOOL
команда за експортиране на резултатите във файл.
SET SQLFORMAT insert;
SPOOL '/Users/barney/data/insert_regions.sql';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole;
Това експортира резултата във файл, наречен insert_regions.sql
на посоченото място.
След като заявката беше експортирана във файл, зададох SPOOL
за off
и SQLFORMAT
към ansiconcole
.
Ето как изглежда полученият файл:
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.
Премахване на обратна връзка
Можете да премахнете X rows selected
с SET FEEDBACK off
:
SET SQLFORMAT insert;
SET FEEDBACK off;
SELECT * FROM regions;
SET FEEDBACK on;
SET SQLFORMAT ansiconsole;
Резултат:
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');
В този случай обърнах FEEDBACK
отново след експортиране на файла и задайте SQLFORMAT
обратно към ansiconsole
.