如何将“DESCRIBE表”的查询导出到excel文件?
例如:
我的查询类似于“DESCRIBE Mst_Fi_Bond_Issuers;”我有这样的结果:
我想自动导出到excel表。请帮我。谢谢..
答案 0 :(得分:0)
您可以使用这样的SQL块: [请根据需要进行编辑]
DECLARE
createdir VARCHAR2(2000);
directory NUMBER;
filen VARCHAR2(50);
dirn VARCHAR2(50);
filedat UTL_FILE.file_type;
BEGIN
dirn := 'DESC';
filen := 'yourfilename.csv';
createdir := q'{create directory DESC as '[your directory]'}';
execute immediate (createdir);
filedat := UTL_FILE.fopen(dirn, filen, 'W', 32767);
UTL_FILE.put_line (filedat, 'NAME;TYPE');
for rowdat in (select column_name || ';' || data_type currow from dba_tab_columns)
LOOP
UTL_FILE.put_line (filedat, rowdat.currow);
END LOOP;
UTL_FILE.fclose (filedat);
END;
/
答案 1 :(得分:0)
正如jera所说,做一个查询并将结果写入文件要好得多,因为你在收集信息和格式化输出方面有更多的灵活性。
但也许由于限制,你无法访问dba _...对象。 而不是那样,看看USER _... - 视图,它们始终可供oracle用户使用
你可以在那里找到你想知道的一切(例如USER_TABLES.USER_TAB_COLS,USER_PROCEDURES等)。