【问题标题】:jOOQ loadInto not throwing error on foreign key constraint failjOOQ loadInto 不会在外键约束上抛出错误失败
【发布时间】:2021-07-23 09:17:43
【问题描述】:

我正在将一些表从数据库迁移到另一个(MySql 5.7、jOOQ 3.10),并使用以下代码插入:

try {
     myDatabase
         .loadInto(MYTABLE)
         .onErrorAbort()
         .batchAll()
         .loadRecords(rows)
         .fields(MYTABLE.fields())
         .execute();
 } catch (Exception e) {
     e.printStackTrace();
 }

此表对另一个表有 FK 约束,如果填充了另一个表,则插入工作。但是,如果我不先填充另一个表,我不会收到任何错误,程序“成功”完成,但没有插入任何行。

尝试通过终端/datagrip 执行相同的插入会给我预期的 FK 错误

编辑:也尝试使用.onErrorAbort()(添加到示例代码中)

【问题讨论】:

  • 那很好,请在下面接受我的回答。
  • 我昨天尝试接受但没有工作。现在它起作用了。再次感谢!

标签: java mysql jooq


【解决方案1】:

你可以通过做检查加载器的错误

// The errors that may have occurred during loading 
List<LoaderError> errors = loader.errors(); 
// loop if you want
LoaderError error = errors.get(0);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-29
    • 1970-01-01
    相关资源
    最近更新 更多