this is oracle sqldeveloper only, sorry if that breaks your heart like mine
in sqldeveloper, execute the following query
SET SQLFORMAT <format>
/*<format>:= CSV | INSERT | JSON | XML | HTML | ANSICONSOLE | LOADER | FIXED | DEFAULT
*/
example to get as csv:
SET SQLFORMAT CSV
SELECT TABLE_NAME, DATA_LENGTH, LAST_ANALYZED
FROM ALL_TAB_COLS
FETCH FIRST 1 ROWS ONLY;
/* script output
"TABLE_NAME","DATA_LENGTH","LAST_ANALYZED"
"ACCESS$",22,19-SEP-21
*/
or JSON?
SET SQLFORMAT JSON
SELECT TABLE_NAME, DATA_LENGTH, LAST_ANALYZED
FROM ALL_TAB_COLS
FETCH FIRST 1 ROWS ONLY;
/*
{"results":[{"columns":[{"name":"TABLE_NAME","type":"VARCHAR2"},{"name":"DATA_LENGTH","type":"NUMBER"},{"name":"LAST_ANALYZED","type":"DATE"}],"items":
[
{"table_name":"ACCESS$","data_length":22,"last_analyzed":"19-SEP-21"}
]}]}
*/
if the dataset is too big, just dump it to a file
execute this before running the SELECT
statement to save the output to a FILE
/tmp/insert_script.sql
SPOOL "/tmp/insert_script.sql" -- SPOOL <FILE_PATH>
and turn off spooling after the execution is complete
SPOOL OFF
to reset to default behavior:
SET SQLFORMAT DEFAULT -- or simply SET SQLFORMAT