Tag: connector j

在带有Connector / J的MySQL中使用getGeneratedKeys和批量插入

使用Connector / J,我想在主表中进行批量插入,然后批量插入到详细信息表中(两者都是PreparedStatement.executeBatch() )。 我没有在网上找到太多的信息,所以我正在寻找有经验的人的任何反馈。 我可以使用Statement.getGeneratedKeys()来获取主表中新插入的行的ID,以便我可以在详细信息插入中将它们用作外键吗? 如果不是每个查询都导致插入(例如, insert … on duplicate key update查询中有insert ignore或insert … on duplicate key update ),该怎么办? 我会在Statement.getGeneratedKeys()为每个语句获取一行,还是仅为新语句获取一行? Statement.getGeneratedKeys()返回什么,其中一个插入的主记录出错,并且连接字符串中的continueBatchOnError设置为true ? Connector / J版本5.0.x与5.5.x之间的相关行为是否有任何差异? 那么MySQL 5.0和5.1呢? 还有其他任何我应该注意的问题或陷阱吗? 有一个更好的方法吗?