Kettle:如何将 csv 文件中的特定日期字符串插入 table 的日期字段

Kettle: How to insert the a specific date string from csv file to date field of a table

我正在使用 Kettle 将数据从 csv 文件导入到 oracle 数据库。 现在我在 csv 文件中遇到一个日期字符串,如下所示:

01-SEP-18 11.47.18.032000 AM ASIA/SHANGHAI

而table对应的字段类型是Date或Timestamp。

如何使用 Kettle 来处理这个问题?

使用带时区的时间格式:

CSV Input 步骤中 select 日期格式为 yyyy/MM/dd HH:mm:ss.SSS XXX.

如果它不起作用(也许它不理解 AM/PM),请在 CSV Input 步骤中将日期读取为 String。然后使用 Select valueMeta-Data 选项卡中将类型从 String 更改为 Date。您有很多选择,select您需要的可能会要求进行一些试用。

如果它仍然不起作用(因为它不理解 ASIA/Shangai 或因为它发生了变化),那么在 Javascript 步骤中读取字符串,您可以在其中使用 str2date函数[打开Transform function/Date function,右击st2date(var,var,var,var)和selectSample得到函数说明]

如果还是不行,再用Javascript步骤解析字符串,计算出正确的结果。坦率地说,您可能不需要使用这个最后的手段。