千家信息网

kettle的文件批量入库功能是怎样实现的

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,kettle的文件批量入库功能是怎样实现的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。kettle 除了作为 ETL 工具外,还有很多
千家信息网最后更新 2026年11月02日kettle的文件批量入库功能是怎样实现的

kettle的文件批量入库功能是怎样实现的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

kettle 除了作为 ETL 工具外,还有很多数据处理方面的实用功能,下面介绍几个实用的小功能。

1. 文件批量入库
该功能可以将一个目录下的全部或部分文件加载到数据库中。

第一步: "获取文件名" 步骤获取一个目录下的文件名,使用一个正则表达式来指定文件名。

指定了 E:/opensource/kettle-trunk/ui/images 目录下所有以 .png 结尾的文件名。在这个步骤里创建了下面几个字段来描述所有获取的文件:

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" 按钮获得并执行创建表的 SQL 语句。

通过这三个步骤可以将文件名,文件属性,文件内容都保存到数据库里,

如果文件是二进制文件,文件内容一般保存为 BLOB 、Binary 、Image 等类型。

如果文件是字符型文件,文件内容一般保存为 CLOB 、varchar、Text 等类型。

注意:因为该方法是一次性将文件内容都读到了内存中,因此只能处理比较小的文件。

看完上述内容,你们掌握kettle的文件批量入库功能是怎样实现的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

文件 内容 功能 数据 文件名 数据库 步骤 字段 方法 目录 类型 输出 实用 按钮 更多 脚本 问题 处理 字符型 束手无策 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 南京欣网互联网络科技 百单网互联网科技有限公司怎么样 紫鲸互联网科技 极限挑战互联网科技 融贸通互联网科技 互联网科技网站 滨湖区互联网智能科技产品供应 承德科技产业互联网发展 栖莱科技互联网股份有限公司 昊天互联网科技有限公司 哈尔滨屹滨互联网科技有限公司 互联网金融科技展 21世纪互联网科技成就 四川互联网展示科技馆设计 江苏互联网智能科技软件 江苏互联网科技小贷 2021世界互联网领先科技成果发布 南京一网一红互联网科技有限公司 杭州融税互联网科技有限公司 科技互联网专业工作会议发言稿 咖啡网 互联网络科技 百单网互联网科技有限公司怎么样 互联网科技媒体 科技类的互联网平台 互联网大会黑科技排名 皮皮虾互联网科技有限公司 互联网科技股为什么大涨 有人说阿里系是互联网科技企业 北京瑞云互联网科技有限公司
0