gangjh 发表于 2014-02-06 15:47

oracle数据库中,用SQL Select直接訪問訪問存儲在blob中的excel數據

在我的工作中,经常需要访问Excel数据或者导入到oracle数据库中

常用的做法是:
   在前端程序中是逐行访问,读取数据.
   在oracle后端也可以处理.还更加方便

我封装了一个通用的package utl_excel.用来用SQL直接查询.

範例1:excel数据存放在exceldata的blob_data栏位,
   select*
    fromexceldata a,
    table( utl_excel.get_xls_table(blob_data) ) xx
    where a.name='MSOFFICE.EXCEL';

範例2:直接读取http或者ftp上的excel文件,    utl_lob是另外一个通用package
select*
    from    table(
             utl_excel.get_xls_table(utl_lob.url2blob('http://192.168.1.11/data/test.xls')) )


原理:
java使用 jxl.jar 訪問excel ,用pl/sql封装成package


完整代碼請參考cu blob連接
   http://blog.chinaunix.net/uid-173640-id-4053324.html

代碼雖談不上優雅,但使用起來還是蠻方便的.
希望大家喜歡!


页: [1]
查看完整版本: oracle数据库中,用SQL Select直接訪問訪問存儲在blob中的excel數據