事务是相关操作构成一个完整操作单元,所有的语句都顺利执行后,事务可以提交。否则, 如果其中某个语句遇到错误,那么事务将被回滚,就好像没有执行过任何命令一样。
将多个命令组合成事务的主要原因是为了确保数据库的完整性。例如, 假设我们需要讲钱从一个帐号转账到另一个帐户。此时,一个非常重要的问题是我们必须同时将钱从一个帐号取出并且存入另一个帐号。如果在将钱存入其他帐号之前系统发生崩溃,那么我们必须撤销取款操作,取款存款必须是一个完成的操作单元,在同一个是事务里完成。
可见,事务要么成功的执行所有的操作并被提交,要么在中间某个失败的位置,执行回滚操作,数据库讲自动这小上次提交事务以来的所有更新操作,就像没有执行过任何命令。
默认情况下,数据库链接处于自动提交模式。每个sql命令一旦被执行便被提交给数据库。如果要检查当前自动提交模式的设置,请调用Connection类中的getAutoCommit方法。
设置自己的事务单元:
1、关闭自动提交模式:conn.setAutoCommit(false);---------事务的开始
2、使用通用的方法创建语句对象Statement
Statement stmt = conn.createStatement();
3、 任意多次调用executeUpdate方法;
4、 执行了所有命令之后,调用commit方法。--------------事务的结束
5、如果出现错误,请调用conn.rollback();
此时, 程序将自动这些上次提交以来的所有命令。当事务被SQLExceptiony
异常中断时,通常的方法是发起回滚操作。
分享到:
相关推荐
【JDBC基础——小练习】 Java数据库连接(Java Database Connectivity,简称JDBC)是Java编程语言中用于执行SQL语句的API,它使得Java开发者能够访问各种类型的数据库系统。本练习将带你深入理解JDBC的基础知识,...
学习JDBC和MySQL的基础知识,不仅可以帮助你理解和操作数据库,还可以为进一步深入学习数据库设计、SQL优化、事务处理、存储过程等高级主题打下坚实基础。在实际开发中,熟练掌握JDBC能有效提升数据操作的效率和代码...
在给定的压缩包文件中,包含的三个jar文件——msbase.jar、mssqlserver.jar以及msutil.jar,都是针对Microsoft SQL Server数据库连接的特定JDBC驱动组件。 1. msbase.jar:这个文件是基础类库,包含了JDBC驱动的...
本压缩包“JDBC Driver 驱动包”包含了针对三个主流关系型数据库管理系统(RDBMS)——MySQL、Microsoft SQL Server 2000以及Oracle的JDBC驱动程序,这些驱动程序使得Java开发者能够通过编写Java代码来与这些数据库...
在JDBC编程中,需要捕获并处理可能抛出的SQLException及其子类。良好的异常处理有助于识别和解决数据库操作中遇到的问题。 【总结】 JDBC_Bank项目是一个理想的实践平台,可以帮助开发者深入理解JDBC与数据库之间...
`msbase.jar`包含了基础的SQL Server连接功能,`mssqlserver.jar`提供了SQL Server特定的扩展功能,而`msutil.jar`则包含了一些实用工具类,如性能计数器和事务支持。 使用这些JAR包进行数据库连接的基本步骤如下:...
标题 "jdbc(mssql,oracle,mysql)" 涉及到的是数据库连接技术,特别是Java数据库连接(JDBC)与三个主流关系型数据库管理系统——Microsoft SQL Server、Oracle和MySQL的交互。JDBC是Java语言中用来规范客户端程序...
5、JDBC事务特性及常用方法: - 事务特性包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID。 - 常用方法: - Connection的setAutoCommit()方法用于开启或...
作为Java核心类库的一部分,JDBC的一个显著特点是它的通用性和独立性——它不仅能够与多种不同的数据库系统配合工作,而且对于开发人员来说,无需了解底层数据库的具体实现细节即可编写出高效、稳定的数据库应用程序...
对于SQL Server 2005,我们需要使用微软提供的JDBC驱动——JDBC Driver for SQL Server(也称为MSSQL JDBC或Microsoft JDBC Driver)。 要连接到SQL Server 2005,首先需要在项目中引入JDBC驱动的jar文件,例如`...
- **代码示例**:书中提供了大量实用的代码示例,覆盖了JDBC编程的各种场景,帮助读者将理论知识转化为实践技能。 - **常见问题解决**:针对JDBC开发中常见的问题和陷阱,提供具体的解决方案,帮助开发者避免常见...
【网络121第8周实验——数据库编程(MySQL)】是关于使用Java的JDBC技术来访问和操作MySQL数据库的实践课程。JDBC(Java Database Connectivity)是Java语言中用于与各种数据库交互的标准API,它允许开发者用Java...
本文将深入探讨MSSQL_JDBC所需的三个关键jar包——msbase.jar、mssqlserver.jar和msutil.jar,以及它们在建立Java与MSSQL连接中的作用。 首先,msbase.jar是基础库,包含了JDBC驱动程序的基础组件。这个jar包提供了...
在Java编程领域,JDBC(Java Database Connectivity)是连接Java应用程序与数据库的标准接口。本教程将通过一个经典的案例——图书管理系统,来深入讲解JDBC的基本使用和核心概念。 首先,我们需要理解JDBC的主要...
Java JDBC(Java Database Connectivity)是Java编程语言中用于与数据库交互的一组接口和类,它提供了标准的API,使得开发者可以使用Java程序访问各种不同类型的数据库。本资料来源于加拿大知名的IT培训机构——达内...
传统的JDBC编程涉及大量的样板代码,如打开和关闭数据库连接、创建和执行SQL语句等,而Spring JDBC模板通过抽象这些繁琐的任务,使得数据库交互变得更加简洁和易于管理。例如,它支持预编译的SQL语句,能有效防止SQL...
总结来说,"加载数据库jdbc"涉及了Java编程中的一个重要方面——数据库连接。通过理解JDBC API,开发者可以编写出高效且可移植的代码来与SQL Server这样的关系型数据库进行交互。确保正确安装和配置JDBC驱动,以及...
在"java编程——学员管理系统"中,客户端可能包含一系列的GUI组件,如文本框、下拉菜单、按钮等,以便用户可以方便地浏览和操作数据。开发客户端时,可能会用到Java Swing或JavaFX库来构建图形用户界面。 服务器端...