使用SQL * Plus假脱机为CSV,然后将CSV转换为PDF
我有一个SQL将一些结果后台打印到一个CSV文件,然后通过电子邮件发送给客户。 Microsoft Excel(通常是最终用户打开CSV文件的默认应用程序)的方式对于某些最终用户而言稍微有点混乱,因为在打印之前,通常需要使列变大(否则显示#等)。
在发送电子邮件之前,是否可以直接将文件转换为PDF文件,或将CSV转换为更易于阅读的PDF?
我在网上search了一个命令行工具,将CSV转换为PDF,但空白。 这是在没有RHN订阅的红帽企业Linux服务器上生成的,因此具有大量依赖关系的东西将是安装的噩梦。
是的,有几个txt2pdf程序是免费的,专有的为不同的平台。 谷歌searchtxt2pdf给出了一个丰富的点击量。 剩下的就是把csv转换成文本(这很简单,因为csv 是文本)
您可能需要编写(或要求)一个简单的脚本,将其转换为pdf之前,将csv更改为您的喜好。
添加thom给出的回复,你可以实际上(如果可能的话)编辑SQL文件本身来发出一个带有必要的分隔符和空格的txt文件,从而不需要将csv转换为txt。 就像我有一个SQL文件打印数据在文本文件的每一行中,用逗号分隔的列值打印数据和每个logging(或元组)由一行'|'分隔。 你可以检查每个属性,我已经设置,它代表什么,从而你可以根据你的需要打印出来的东西
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 /