什么是数据库事务?
来源:互联网 发布:魔兽争霸mac无法打开 编辑:程序博客网 时间:2024/06/06 00:13
参考链接:http://blog.sina.com.cn/s/blog_48f0fa0f0101bmdb.html
==========
1、工作环境:myeclipse中->新建java_oracle工程->新建包com.zp->新建java_oracle_transction.java类,使用jdbc连接数据库
2、代码如下:package com.zp;
import java.sql.*;
public class java_oracle_transction {
public static void main(String[] args) {
// TODO Auto-generated method stub
//设置全局变量,可以在catch中使用
Connection ct=null;
try{
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//得到连接
ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:simlink", "scott", "tiger");
// 加入事务处理,设置不能自动提交
ct.setAutoCommit(false);
Statement sm=ct.createStatement();
//从ALLEN工资中减去100元
sm.executeUpdate("update emp set sal=sal-100 where ename='ALLEN'");
//故意是程序在此处跳出,抛出异常
//注:如果程序中不适用事务机制,则allen会减去100元,但smith不会增加100元,使用后因为程 //序报错,所以allen和smith
的工资都不会变化
int i=9/0;
//在SMITH工资中加上100元
sm.executeUpdate("update emp set sal=sal+100 where ename='SMITH'");
//事务提交
ct.commit();
sm.close();
ct.close();
}
catch(Exception e){
//如果程序发生异常,就回滚
try{
ct.rollback();
}
//捕捉回滚事务异常
catch(Exception ex)
{
ex.printStackTrace();
}
e.printStackTrace();
}
}
}
=========
总结,什么是事务,即事务回滚?是防止操作操作数据库的过程中,钱没了但是别人没收到,要加入回滚,还原操作之前的状态。是数据库提供的,但是需要操作者即程序员进行控制,程序员决定将哪些数据库操作作为一个事务进行操作。
0 0
- 什么是数据库事务
- 什么是数据库事务
- 数据库 什么是事务?
- 什么是数据库事务
- 什么是数据库事务?
- 什么是数据库的事务???
- 什么是数据库事务?
- 什么是数据库事务
- 什么是ORACLE数据库的事务
- Sql Server数据库事务介绍(一)---什么是事务
- Sql Server数据库事务介绍(一)---什么是事务
- 什么是数据库事务,为什么要引入数据库事务,数据库事务的特征是什么
- 什么是数据库事物及数据库事务涉及的工作
- 什么是事务?
- 什么是事务
- 什么是事务
- 什么是事务
- 什么是事务?
- SpringBoot学习笔记(4) Spring Boot 集成 Mybatis
- 说说进程与线程的区别与联系
- 二叉树的循环遍历方法,Java实现。利用栈和arraylist
- JavaWeb之Servlet
- json的定义
- 什么是数据库事务?
- Reverse Bits
- EventBus理解
- ServletContainerInitializer初始化器
- 基于Phaser框架完成FlappyBird
- 连接数据库
- abs() 函数
- 单例模式
- Hdu 5749 Colmerauer