`
starbhhc
  • 浏览: 654431 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

处理批量更新的结果和违例

阅读更多
import java.sql.BatchUpdateException;   
import java.sql.Connection;   
import java.sql.DriverManager;   
import java.sql.Statement;   
  
public class DemoBatchUpdateException {   
  public static Connection getMySQLConnection() throws Exception {   
    String driver = "org.gjt.mm.mysql.Driver";   
    String url = "jdbc:mysql://localhost/databaseName";   
    String username = "root";   
    String password = "root";   
    Class.forName(driver);   
    return DriverManager.getConnection(url, username, password);   
  }     
  public static void checkUpdateCounts(int[] updateCounts) {   
    for (int i = 0; i < updateCounts.length; i++) {   
      if (updateCounts[i] >= 0) {   
        // Successfully executed; the number represents number of affected rows   
        System.out.println("OK: updateCount=" + updateCounts[i]);   
      } else if (updateCounts[i] == Statement.SUCCESS_NO_INFO) {   
        // Successfully executed; number of affected rows not available   
        System.out.println("OK: updateCount=Statement.SUCCESS_NO_INFO");   
      } else if (updateCounts[i] == Statement.EXECUTE_FAILED) {   
        System.out.println("updateCount=Statement.EXECUTE_FAILED");   
      }   
    }   
  }   
  
  public static void main(String[] args)throws Exception {   
    Connection conn = getMySQLConnection();   
    Statement stmt = null;   
    try {   
      conn.setAutoCommit(false);   
      stmt = conn.createStatement();   
      stmt.addBatch("DELETE FROM animalsTable");   
      stmt.addBatch("INSERT INTO animalsTable(id, name) VALUES(1, 'A')");   
      stmt.addBatch("INSERT INTO animalsTable(id, name) VALUES(2, 'B')");   
      stmt.addBatch("INSERT INTO animalsTable(id, name) VALUES(3, 'C')");   
  
      int[] updateCounts = stmt.executeBatch();   
      checkUpdateCounts(updateCounts);   
      conn.commit();   
    } catch (BatchUpdateException e) {   
      int[] updateCounts = e.getUpdateCounts();   
      checkUpdateCounts(updateCounts);   
      try {   
        conn.rollback();   
      } catch (Exception e2) {   
        e.printStackTrace();   
      }   
    } catch (Exception e) {   
      e.printStackTrace();   
    } finally {   
      stmt.close();   
      conn.close();   
    }   
  }   
}  
分享到:
评论

相关推荐

    ug6.0内存违例解决方法

    在UG(Unigraphics Solutions)这样的复杂软件中,由于处理大量的几何数据和计算,可能会出现这种情况。 描述部分提供了具体的解决步骤:“rt解压后拷备ugii_simpl_chinese.lng到*\UGS\NX 4.0\LOCALIZATION目录下...

    Java违例控制(杂)

    Java中的违例控制是编程实践中不可或缺的一部分,它允许开发者在程序遇到异常情况时进行优雅的错误处理,确保程序的稳定性和健壮性。在Java中,违例(Exception)是程序运行时出现的非正常状态,通常是因为某种预期...

    一种在FPGA设计中解决holdtime违例的方式

    一种在FPGA设计中解决holdtime违例的方式

    单片机篮球24秒违例汇编程序

    这些结构在处理计时器启动、停止和判断违例时至关重要。 7. **数据存储**:计时器的当前值和状态需要保存在单片机的内存中。对于小型单片机,这可能涉及到对寄存器或RAM的高效管理。 综上所述,"单片机篮球24秒...

    电信设备-使用码违例的辅助信道.zip

    在设计和优化电信系统时,理解和有效利用码违例的辅助信道对于提高通信质量和可靠性是至关重要的。通过阅读"使用码违例的辅助信道.pdf"这份资料,读者可以深入理解这一技术在实际应用中的工作原理和实施细节。

    cdc.zip_0in cdc check违例_CDC_zip

    在IT行业中,CDC(Change Data Capture)是一种数据库技术,用于捕获和跟踪数据库中的更改,以便后续处理或分析。此技术对于数据仓库、实时数据分析和系统间的同步至关重要。"0in cdc check违例"可能是指在执行CDC...

    篮球违例及犯规.doc

    篮球是一项竞技激烈的团队运动,规则严谨,其中包括许多关于违例和犯规的规定。这些规定旨在确保比赛的公平性和流畅性。以下是一些关键的篮球违例和犯规知识点: 1. **队员出界和球出界**:当队员的身体任何部位...

    篮球赛24秒违例倒计时报警器的proteus仿真

    (1)具有倒计时功能。...当发生“24”秒违例时,在倒计时“24”秒结束,数码管消隐的瞬间并且立刻发出报警声“嘀-----”,且该声音时间不能太长也不能太短,只能是0.5秒左右,在3米外可听到清晰报警声。

    课程设计报告书篮球赛30秒违例监控与报警显示系统设计

    程序设计包括主程序流程图,通过合理安排中断服务子程序来处理按键输入、时间更新和报警触发。 此外,系统还需要考虑显示驱动电路,确保数码管能正确显示时间,并且要有报警电路来实现声光报警功能。这部分可能涉及...

    交通违例事项惩罚条例.doc

    《交通违例事项惩罚条例》是香港特别行政区的一项法规,旨在规范交通违法行为并设定相应的罚款制度,以确保道路安全和交通秩序。此条例涉及到多个方面的交通管理规定,包括但不限于驾驶员的责任、车辆的停放、交通...

    篮球违例与犯规.doc

    篮球违例与犯规.doc

    中微子混合矩阵的指数参数化:不同数据集和CP违例的比较分析

    指数形式允许轻松分解和分别分析旋转和CP违规。 利用有关中微子混合的最新实验数据(2016年5月),我们计算了中微子的指数参数化矩阵的值,并考虑了CP违规。 尽管中微子混合数据发生了显着变化,但夸克和中微子的...

    DreamWeaver文件保存时提示"发生共享违例"问题分析及解决方法

    在使用Adobe DreamWeaver进行网页开发时,可能会遇到一个令人困扰的问题,即在尝试保存文件时,系统弹出“发生共享违例”的错误提示。这个问题通常发生在你正在编辑的文件被另一个进程占用的情况下,导致无法正常...

    异常处理和多线程

    相对于错误,异常可以通过合理的编程技巧和异常处理来预防和处理。Java异常类层次结构中,`Exception`类是最基础的异常类,它有两个主要子类:运行时异常(RuntimeException)和非运行时异常(非RuntimeException)...

    【博客大赛】时序违规的常见原因及解决办法分享

    在后续的讨论中,我们将更加详细地介绍如何具体处理建立时间、保持时间和异步时钟域问题,包括使用图形化工具进行分析和优化,以及具体的代码实现策略,帮助读者更好地理解和解决这些问题,以保证项目的顺利进行。

    基于Yolov8的AI篮球走步、二运违例判罚源码+部署教程+训练好的模型+各项评估指标曲线(高分项目).zip

    基于Yolov8的AI篮球走步、二运违例判罚源码+部署教程+训练好的模型+各项评估指标曲线(高分项目).zip基于Yolov8的AI篮球走步、二运违例判罚源码+部署教程+训练好的模型+各项评估指标曲线(高分项目).zip基于Yolov8...

    微处理器系统结构与嵌入式系统设计课件:chap7 ARM编程模型.ppt

    ARM处理器的流水线工作流程涉及取指、译码、执行和结果写回等阶段,通过优化这些步骤,可以实现高效的数据处理和指令执行。例如,地址自动增/减寻址模式有利于循环代码的优化,多寄存器指令则提升了数据吞吐量。 总...

    FPGA时序优化及约束

    随着FPGA的应用越来越广,FPGA的开发难度和时间对于项目的影响也越来重要,尤其是时序违例给项目的稳定度带来的影响更大。该文档主要针对FPGA设计中的时序违例进行分析并进行优化和约束,希望对大家的学习有所帮助。

    JAVA程序设计:第8章 Java异常处理.ppt

    而违例则是由于编程错误或外部因素导致的一般性问题,比如数组下标越界、空指针访问等,这些是可以被程序员捕获和处理的。 在Java中,当程序运行时遇到异常,会自动生成一个异常类的对象,并将其提交给Java运行时...

Global site tag (gtag.js) - Google Analytics