在导出期间保持 SQL Developer 4.0 的显示空值

Keeping SQL Developer 4.0's Display Null Values during export

在 SQL Developer 4.0 中,我有 Pref > Database > Advance > Display Null value as (null) **很确定那是默认值

我的查询结果报表网格将 NULL 显示为 (null)....完美!

当我导出(或复制/粘贴)任何格式的文件类型时,尝试了所有这些,在我的查询结果报告网格中显示为“(null)”的数据现在只是一个 space , " "...

我正在尝试向另一个部门提供 QA 测试报告,虽然我可以解决此问题 SQL 并为每一列设置输出格式,但我宁愿导出或复制/粘贴到 excel 出示我的证明。

我没有看到这种行为的偏好吗?

库尔特

您可以使用 SQL*Plus set null command,这是 SQL 开发人员认可的众多功能之一。

当您设置它然后 运行 将您的查询作为脚本 (F5) 时,输出将出现在脚本输出 window 中,并且您指定的任何文本都会出现而不是 null。您可以从那里复制和粘贴,但是您必须将文本转换为 Excel.

中的数据

如果您运行将查询作为语句 (Ctrl-Enter),则查询结果 window 中的输出显示您在首选项中设置的值,不是 你用 set null 指定的内容。但是,当您右键单击并导出为 CSV 时,导出文件 确实 使用 set null 字符串。

例如,如果您在工作表中设置空值处理:

set null "NULL"

然后 运行 作为脚本的查询:

select 1 as id, null as value from dual;

脚本输出 window 显示:

        ID VALUE
---------- -----
         1 NULL 

如果您 运行 将查询作为语句,则查询结果 window 显示首选项中的 (null) 而不是 NULL:

但是当您右键单击并导出为 CSV 时,生成的文件包含:

"ID","VALUE"
1,NULL

如果您 set null "(null)" 使值与显示首选项匹配,那么您当然不会注意到差异。