什么是数据库事务?

来源:互联网 发布:魔兽争霸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
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 脸过敏了又红又痒怎么办 刚开的淘宝店没生意怎么办 我22岁长得显老怎么办 卡的钱被qq转走怎么办 招行u盾密码忘了怎么办 孩子上五年级了成绩非常差怎么办 红米3s开不开机怎么办 皮肤被虫子咬了红肿痒怎么办 微信被骗了1万多怎么办 6个月宝宝吃了纸怎么办 农行k宝扣了50块怎么办 4g流量用的太快怎么办 怀疑老公有外遇最明智的怎么办 咽喉疼怎么办最简单的方法如下 生完孩子后腰疼的厉害怎么办 眼睛进东西了弄不出来怎么办 18k金不给换黄金怎么办 我22岁欠了10万怎么办 1岁宝宝又吐又拉怎么办 月经10天了还没干净怎么办 舌头有异味怎么办是有口臭吗 快8个月羊水破了怎么办 25岁欠了50万债怎么办 28岁血压高150低压110怎么办 苹果6的4g网络慢怎么办 一个月染了6次头怎么办 五0二干在衣服上怎么办 刚怀孕见红了肚子不痛怎么办 我有外遇了老婆不离婚怎么办 套了牙套的牙疼怎么办 我鼻子上有很多螨虫和黑头怎么办 鱼刺卡在喉咙怎么办最有效的办法 脚被蚊子咬了很痒怎么办 好压7z密码忘了怎么办 4g卡显示2g网络怎么办 过塑机把纸吞了怎么办 红米1s开不了机怎么办 跟老婆吵架闹的要离婚该怎么办 充了q币没有到账怎么办 9个月宝宝吃了盐怎么办 红米4x开不了机怎么办