Когато използвате 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 .