使用jOOQ从CSV导入日期

时间:2014-04-19 21:01:26

标签: java mysql csv jooq

我有一个CSV文件,我试图通过jOOQ的loadCSV方法导入。我想直接导入带有DATE列的MySQL数据库,但我的CSV文件的日期格式为YYYYMMDD而不是YYYY-MM-DD。有没有办法可以将自定义日期格式(或日期解析器)传递给jOOQ以进行导入过程?

谢谢!

1 个答案:

答案 0 :(得分:1)

从jOOQ 3.3开始,加载器API中不支持此类数据类型转换。但我已注册issue #3221以添加对此有用功能的支持。我怀疑这样的东西应该是可行的(Java 8语法):

ctx.loadInto(AUTHOR)
   .loadCSV(csv)
   .fields(AUTHOR.ID, AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
   .values(
      row -> AUTHOR.ID.getDataType().convert(row[0]),
      row -> row[1].split(" ")[0],
      row -> row[1].split(" ")[1]
   )
   .execute();

当然欢迎捐款; - )