使用SQL * Plus将CSV转换为CSV,然后将CSV转换为PDF

时间:2013-11-04 18:32:56

标签: excel bash pdf csv rhel

我有一个SQL将一些结果假脱机到CSV文件,然后通过电子邮件发送给客户。 Microsoft Excel(通常是最终用户默认打开CSV文件的应用程序)的方式对于某些最终用户来说有点混乱,因为在打印之前通常需要将列放大(否则会显示#等)。

是否可以直接假脱机到PDF文件,或者在发送电子邮件之前将CSV转换为更易于阅读的PDF格式?

我在网上搜索了一个命令行工具,将CSV转换为PDF,但是空白。这是在没有RHN订阅的Red Hat Enterprise Linux服务器上生成的,因此具有大量依赖性的东西将是安装的噩梦。

2 个答案:

答案 0 :(得分:0)

是的,有几个txt2pdf程序对于不同的平台都是免费的和专有的。 谷歌搜索 txt2pdf 会产生大量的点击量。 剩下的就是将csv转换为文本(这非常简单,因为csv 文本)

您可能想要编写(或要求)一个简单的脚本,在将csv转换为pdf之前根据自己的喜好更改csv。

答案 1 :(得分:0)

添加由thom给出的回复,您实际上可以(如果可能的话)编辑SQL文件本身以使用所需的分隔符和空格来展示txt文件,从而消除了将csv转换为txt的需要。就像我有一个sql文件,它以逗号分隔的列值打印文本文件每行中一行中存在的数据,每个记录(或元组)由一行“|”分隔。您可以检查我设置的每个属性及其代表的含义,从而可以根据您的需要打印出一些内容

SET SPACE 0
SET LINESIZE 500
SET PAGESIZE 0
SET ECHO OFF
SET FEEDBACK OFF
SET VERIFY OFF
SET TRIMSPOOL ON
SET RECSEP each
SET RECSEPCHAR |
SPOOL spool_out.txt
select col1||','||col2||','||col3||','||col4 from table;
SPOOL OFF
exit
/