使用Pentaho Kettle将字符串转换为布尔值

时间:2017-11-20 15:23:26

标签: oracle mongodb pentaho

我正在使用Pentaho Kettle将Oracle数据库移动到Mongo数据库。我已经成功完成了我想要的几乎所有事情,但我只是遇到了最后一个问题。

在oracle db中,它们有一个具有两种状态的字段:Y或N,而不是一个好的布尔 true false 。我想在转换中做一个映射,说Y是 true 而N是 false ,但Pentaho将其翻译为字符串,而不是真正的 true < / em>和 false

我是否可以轻松设置布尔值?

提前致谢!

1 个答案:

答案 0 :(得分:5)

您可以使用Select values面板上的Meta-data步骤更改类型。

它有效!

但是,由于PDI中布尔值的字符串表示形式为Y / N以及真/假,具体取决于上下文,因此有罪步骤可能是Mongo DB Output

右键单击Oracle Table Input,选择output field并检查字段的类型。如果它不是布尔值,则使用Select value转换它。

然后右键点击Mongo DB Output,选择input field并检查字段的类型。如果它是布尔值,则它会以静默方式转换为Y / N.在这种情况下,使用Replace in string步骤并将Y / N转换为&#34; true&#34; /&#34; false&#34;作为字符串,让Mongo DB静默地将这些特殊字符串转换为boolean。