如何生成 SQL 结果到 Excel sheet (Oracle)

How to generate SQL results to Excel sheet (Oracle)

我正在使用 SQL 开发人员。我需要将 SQL 结果集导出到 Excel sheet。我知道如何手动导出它。

目前我正在使用批处理文件。这又是 运行 的多个 SQL 脚本文件。最后有一个 1 SQL 脚本,其中包含多个 SQL select 语句。现在我需要将这些结果导出到 excel sheet 而 运行ning 批处理文件本身。

批处理文件名称:Mytest.SQL它包含多个脚本文件如下。

@@test1.sql;
@@test2.sql;
@@test3.sql;
@@test4.sql;

最后一个脚本test4.sql包含多个select语句,需要导出到多个excel中。请提出任何解决方案。

我曾经这样做 VB-脚本,即我 运行 来自 Excel 的查询:

Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set ThisWorkbook.OraDatabase = OraSession.OpenDatabase(sDB$, sUSERID$, 0&)
Set OraDynaSet = ThisWorkbook.OraDatabase.CreateDynaset(QueryText, 0&)

您可以在这个宏中调用脚本并在Excel

中写入循环数据

您需要特定的 xls 文件还是 csv 文件?

如果你想要一个 csv,你可以用 sql.

假脱机一个文件

对于 xls 文件,您无法轻松完成,您可能必须通过其他编程语言,如 java 或 c# 或任何具有特定库的语言来构建您的报告(例如 Java阿帕奇兴趣点)。

几个月前我找到了这个解决方案。一个随时可用的包,用于将查询结果卸载到 xlsx 文件中,还带有格式化。这里是link。还有一个描述如何使用这个包。 pl/sql package to unload as xlsx

希望对您有所帮助。