gpt4 book ai didi

java - Talend - 将 'NULL' 插入类型为 'NUMBER' 的数据库列

转载 作者:搜寻专家 更新时间:2023-10-30 20:10:02 25 4
gpt4 key购买 nike

我想从 CSV 文件中读取值(整数),并将它们插入到数据库表中。但是,对于表的某一列,如果从 CSV 文件接收到的值不属于某个区间,则写入数据库的值应该是 NULL

例如,在我的 Java 应用程序中,我这样做:insert.setNull(3, java.sql.Types.INTEGER); 在这种情况下。

但如果列类型是“NUMBER”,我如何在 Talend 中执行此操作?

最佳答案

只需在您的 tFileInput 和数据库输出实例之间使用一个 tMap 组件来执行这个简单的转换。在 theis 组件内,在右下方的 Pane (输出模式)中选中复选框以让您的字段可为空。请注意,默认情况下,来自 CSV 的字段不可为空。

enter image description here

最后,在右上 Pane (输出转换)的目标字段(您强制为可空的字段)上写一个三元表达式。例如:

(假设您的传入连接称为 input_row)

(input_row.field >= 0 && input_row.field <= 3) ? <value to write if inside interval> : null

我想说的是,如果该字段在 Talend 端和目标数据库表上都可以为空,那么无聊的 java null 就是你的 friend 。

关于java - Talend - 将 'NULL' 插入类型为 'NUMBER' 的数据库列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20664354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com