真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

kettle的文件批量入庫功能是怎樣實現的-創(chuàng)新互聯

kettle的文件批量入庫功能是怎樣實現的,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

10年積累的做網站、成都網站設計經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站制作后付款的網站建設流程,更有東源免費網站建設讓你可以放心的選擇與我們合作。

kettle 除了作為 ETL 工具外,還有很多數據處理方面的實用功能,下面介紹幾個實用的小功能。

1. 文件批量入庫
該功能可以將一個目錄下的全部或部分文件加載到數據庫中。

第一步: “獲取文件名” 步驟獲取一個目錄下的文件名,使用一個正則表達式來指定文件名。

指定了 E:/opensource/kettle-trunk/ui/images 目錄下所有以 .png 結尾的文件名。在這個步驟里創(chuàng)建了下面幾個字段來描述所有獲取的文件:

FILENAME,
SHORT_FILENAME,
PATH,
TYPE,
EXISTS,
ISHIDDEN,
ISREADABLE,
ISWRITEABLE,
LASTMODIFIEDTIME,
SIZE,
EXTENSION,
URI,
ROOTURI

第二步: 使用一個 javascript 腳本,讀取文件內容,如果你不想把文件內容入庫,可以不用這一步。下面是 javascript 腳本的內容:


file = new Packages.java.io.File(filename.getString());
fileInputStream = new Packages.java.io.FileInputStream(file);
var content = Packages.org.pentaho.di.core.Const.createByteArray(file.length());
fileInputStream.read(content, 0, file.length());
fileInputStream.close();

不要忘了,選中 “獲取變量” 按鈕,將 content 也作為一個輸出字段, 類型 Binary。

第三步:“表輸出”,將前兩個步驟獲得的字段,輸出到數據庫的表里。如果數據庫里沒有相應的表,需要使用 “SQL” 按鈕獲得并執(zhí)行創(chuàng)建表的 SQL 語句。

通過這三個步驟可以將文件名,文件屬性,文件內容都保存到數據庫里,

如果文件是二進制文件,文件內容一般保存為 BLOB 、Binary 、Image 等類型。

如果文件是字符型文件,文件內容一般保存為 CLOB 、varchar、Text 等類型。

注意:因為該方法是一次性將文件內容都讀到了內存中,因此只能處理比較小的文件。

看完上述內容,你們掌握kettle的文件批量入庫功能是怎樣實現的的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創(chuàng)新互聯-成都網站建設公司行業(yè)資訊頻道,感謝各位的閱讀!


當前題目:kettle的文件批量入庫功能是怎樣實現的-創(chuàng)新互聯
文章來源:http://weahome.cn/article/dgdiij.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部