栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在带有Connector / J的MySQL中将getGeneratedKeys与批处理插入一起使用

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在带有Connector / J的MySQL中将getGeneratedKeys与批处理插入一起使用

好吧,我进行了一些测试。使用Connector / J 5.1和MySQL 5.1.42,我观察到以下几点:

  1. Statement.getGeneratedKeys()
    可以预期插入

  2. 如果插入或更新了一行(返回的更新计数数组

    executeBatch()
    返回‘1’或‘2’),
    Statement.getGeneratedKeys()
    则将具有该行的键。如果该行未修改(
    insert ignore
    或者
    insert ... on duplicate key update
    导致无操作,则
    executeBatch()
    返回
    3
    ),则没有键。

  3. 返回的ResultSet

    getGeneratedKeys
    将具有(2)中成功插入的行的条目。失败的插入将不会生成密钥行(更新计数值为
    Statement.EXECUTE_FAILED

  4. 小心使用

    rewriteBatchedStatements
    JDBC连接字符串。如果将其设置为
    true
    ,则任何失败都将导致重写的“块”中的每一行都被视为失败。解决此问题的一种方法是遍历失败的行,然后不进行批处理而重试它们。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/515398.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号