Khi sử dụng SQLcl với Cơ sở dữ liệu Oracle, bạn có thể đặt SQLFORMAT
để insert
để xuất kết quả truy vấn dưới dạng INSERT
tuyên bố.
Ví dụ
Dưới đây là một ví dụ để chứng minh:
SET SQLFORMAT insert;
SELECT * FROM regions;
Kết quả:
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.
Nói rõ hơn, đây là kết quả truy vấn khi sử dụng ansiconsole
:
SET SQLFORMAT ansiconsole;
SELECT * FROM regions;
Kết quả:
REGION_ID REGION_NAME ____________ _________________________ 1 Europe 2 Americas 3 Asia 4 Middle East and Africa
Xuất sang tệp
Nếu bạn cần lưu trữ INSERT
trong một tệp, bạn có thể sử dụng SPOOL
lệnh xuất kết quả thành tệp.
SET SQLFORMAT insert;
SPOOL '/Users/barney/data/insert_regions.sql';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole;
Điều đó đã xuất kết quả sang tệp có tên insert_regions.sql
tại vị trí được chỉ định.
Sau khi truy vấn được xuất sang tệp, tôi đặt SPOOL
để off
và SQLFORMAT
tới ansiconcole
.
Đây là tệp kết quả trông như thế nào:
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óa phản hồi
Bạn có thể xóa X rows selected
khi tắt SET FEEDBACK off
:
SET SQLFORMAT insert;
SET FEEDBACK off;
SELECT * FROM regions;
SET FEEDBACK on;
SET SQLFORMAT ansiconsole;
Kết quả:
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');
Trong trường hợp này, tôi đã chuyển FEEDBACK
trở lại sau khi xuất tệp và đặt SQLFORMAT
quay lại ansiconsole
.