【问题标题】:Oracle sqlplus export using spool vs sql developer export使用假脱机的 Oracle sqlplus 导出与 sql 开发人员导出
【发布时间】:2017-08-16 07:40:06
【问题描述】:

我正在运行一个产生 100 000 条记录/行数据的查询。在 sqlplus 中使用 Spool 命令,我生成了一个 csv,它存储了查询的所有输出。

包含 100 000 条记录的 csv 文件大小约为 2.5 GB。

我在 sql developer 中执行的导出选项相同,它生成的文件大小约为 50 MB。

如何在导出过程中使用 spool 命令减小文件大小?

【问题讨论】:

  • 它们在假脱机文件中产生相同数量的行? (“导出”是指 Oracle 中的特定内容……您实际上是从 SQL Developer 假脱机,还是从数据网格中的右键菜单导出?)。两者的输出数据格式是否相同?您是否在 SQL*Plus 中完成了set trimspool on,如果没有,这有什么不同吗?
  • 除了Alex问的,你是如何在sqlplus中生成csv的?你在select col1||','||col2||','||.... 吗?
  • 这就是我所说的“输出数据格式”的意思,但是是的,这更清楚了。 SQL Developer 的导出格式(如果不使用假脱机)也是相关的。问题可能真的是“我如何使用来自 SQL*Plus'. Wonder if colsep 的 CSV 进行假脱机而不是串联,这会浪费大量空间?
  • 您没有指定Oracle的版本。但如果您使用的是 12.2,则只需使用 CSV Markuo。
  • 向我们展示你在这两种工具中是如何处理 csv 的,否则我们必须猜测

标签: excel oracle export sqlplus spool


【解决方案1】:

在脚本开头添加以下内容

set term off
set feed off
set sqlformat csv
set heading off

【讨论】:

    猜你喜欢
    • 2013-05-19
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 2020-10-26
    • 1970-01-01
    • 2012-07-05
    • 2011-11-02
    • 1970-01-01
    相关资源
    最近更新 更多