使用Oracle存储过程压缩

Ade*_*ari 7 oracle zip plsql stored-procedures utility

现在我正在使用Oracle实用程序UTL_COMPRESS.LZ_COMPRESS()来压缩一些数据.但问题是它使用GZIP兼容格式压缩物品,遗憾的是它不兼容ZIP.因此,Windows XP本机解压缩实用程序无法打开它(您知道压缩文件夹thingie).而且用户必须使用一些其他的工具,如7Zip,WinzipFilzip等,以解压缩.

因此,我们最终制定了从Oracle检索GZIP数据的计划,使用Java解压缩它,并将其压缩回ZIP(可以通过Windows实用程序解压缩).这听起来很荒谬compress-in-gzip -> decompress -> compress-again-in-zip.

任何想法我们怎么能首先以理想的格式压缩它,以避免所有这些额外的计算?

APC*_*APC 8

有一个java.util.zip支持WinZip格式的Java包.在Oracle中,我们可以构建java存储过程,以一种可由本机PL/SQL程序调用的形式呈现Java类. 了解更多.

所以你需要做的是写出一个包含未压缩状态数据的文件,然后通过JSP提供它来压缩它.如果您不想编写自己的实现,请查看Vadim Loevski撰写的这篇文章.它包括用于压缩OS文件的Java存储过程.


注意:在此上下文中,JSP表示Java存储过程,它是嵌入在数据库中的Java程序.它与作为Web技术的Java Server Pages不同,因此是JSP首字母缩略词的更常见用法.对于给出的任何混淆,我道歉.