问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

JDBC的事务,有哪位能详细解说下?

发布网友 发布时间:2022-05-01 00:32

我来回答

3个回答

懂视网 时间:2022-05-01 04:53

package qddx.JDBC; 2 import java.sql.*; 3 public class useTransaction { 4 5 public static void main(String[] args) { 6 // TODO Auto-generated method stub 7 Connection conn = null; 8 Statement st = null; 9 PreparedStatement pst = null; 10 ResultSet rs = null; 11 Savepoint sp = null; 12 try{ 13 conn = JDBC_Connection.getConnection(); 14 //指定事务隔离级别 15 conn.setTransactionIsolation(conn.TRANSACTION_READ_UNCOMMITTED); 16 pst = conn.prepareStatement("create table users (id smallint,username text)"); 17 pst.execute(); 18 //提交事务 19 conn.commit(); 20 pst.close(); 21 }catch(SQLException e){ 22 System.err.println("连接数据库或者建表失败"); 23 System.err.println("事务回滚到回滚点"); 24 try{ 25 conn.rollback(); 26 }catch(SQLException ex){ 27 //ex.printStackTrace(); 28 System.out.println("回滚失败"); 29 } 30 try{ 31 conn.setSavepoint();//设置一个存储点 32 st = conn.createStatement(); 33 st.executeUpdate("insert into users values(110,‘Janes‘)");//执行更新语句 34 //st.executeUpdate("insert into users values(‘shibai‘,‘Janes‘)");//执行更新语句 失败的例子 35 conn.commit();//提交事务 36 conn.releaseSavepoint(sp);//释放存储点 37 st.close(); 38 conn.close(); 39 40 }catch(SQLException et){ 41 System.err.println("操作失败"); 42 System.err.println("事务回滚到存储点"); 43 try{ 44 conn.rollback(sp); 45 st.close(); 46 conn.close(); 47 }catch(SQLException exc){ 48 System.out.println("回滚到存储点失败"); 49 //exc.printStackTrace();; 50 } 51 //et.printStackTrace(); 52 } 53 //e.printStackTrace(); 54 } 55 56 } 57 58 }

 

JDBC使用事务实例

标签:

热心网友 时间:2022-05-01 02:01

con.commit();//提交JDBC事务
con.setAutoCommit(true);// 恢复JDBC事务的默认提交方式   
con.rollBack();//回滚JDBC事务
例子:
public boolean delete(int sID) {//成功删除会返回true;
 dbc = new DataBaseConnection();//根据你自己的方式创建数据库的连接
 Connection con = dbc.getConnection();//得到Connection
 try {
  con.setAutoCommit(false);// 更改JDBC事务的默认提交方式,默认是true,是自动提交;
  dbc.executeUpdate("delete from xiao where ID=" + sID);//删除
  dbc.executeUpdate("delete from xiao_content where ID=" + sID);//删除
  dbc.executeUpdate("delete from xiao_affix where bylawid=" + sID);//删除
  con.commit();//提交JDBC事务,如果没问题,这时才真正的删除了;
  con.setAutoCommit(true);// 恢复JDBC事务的默认提交方式,这是个好习惯;
  dbc.close();//关闭连接
  return true;//删除成功
 }
 catch (Exception exc) {
  con.rollBack();//回滚JDBC事务,出现异常,为保证数据完整性,此次操作回滚,不删除;
  exc.printStackTrace();//输出异常信息;
  dbc.close();//关闭连接
  return false;//删除失败
 }
}

热心网友 时间:2022-05-01 03:19

事务(transaction)就是被原子化的一系列动作,要么全成功,要么全失败。
transaction在计算机领域已经是一个非常常用的专有名词了,JDBC并没有对它进行另外的解释。
举个例子:你想更新若干个表中的某几个字段,你不想出现只进行了一半就意外退出的情况,那么,transaction可以帮助你。
代码吗。。。去搜一下,到处都是。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
ef英语哪个好 EF英孚英语培训怎么样? 英孚英语好不好 EF英孚教育到底好不好 大佬们,麦芒7和荣耀10那个值得入手?2500以下的机子还有啥好推荐的么... 介绍几款2500元以前的手机 像素一定要高 其他的不做要求 近期想入手一部安卓手机,价格2200到2500左右…买HTC desire Z还是 三星... 笔记本忘记开机密码怎么办急死了 笔记本电脑屏幕开机锁忘记密码 怎么办?急死了 华硕笔记本电脑开机密码忘记了怎样找回?系统是Windows 7旗舰版... 英语中,年,月,日前 加的介词 英语单词birthday前用什么介词?急 (英语)什么是介词?请说的全面详细,通俗易懂点, 光是中文解释就算了还是看不懂。多说些一般介词的词语 所有关于位置的介词,英语单词 于on ,in,under,有关的英语单词 英语中的介词有哪些?把英语单词说出来一些,不详细不给分. 用公积金贷款购买二手房的手续流程是什么? 二手房抵押公积金贷款流程有哪些 有个字我不认识,怎么样拼出来? 上面是个山下面是个今天的今,很急,麻烦各位帮帮忙 广西的部分岑氏是壮族(其始祖乃东汉岑彭),谁知道其徙播变迁历史? 百家姓里有没有人姓岑? 2021岑姓排名第几 岑姓跟陈姓有什么关系 布依人的姓氏与字辈有哪些? 姓岑的辈分 岑姓的家谱 岑姓氏的来源? 贵州岑氏是谁的后裔 华硕笔记本外壳开裂 修一下 多少钱? 我的电脑买来不到半年 而且好几个月没用 为什么突然后盖就裂开了? 南瓜圆子的做法家常做法 我想做品牌鞋的代理,谁知道要什么条件吗 代理鞋子是什么意思 自己家开的鞋厂,想找点代理商,帮忙销售鞋子,不知道该怎么做 怎么做鞋子代理, 耐克,阿迪的折扣店的或工厂店怎么加盟或代理?怎么加盟 北京百丽公司都代理什么品牌,女鞋和运动的都算 怎样代理环球鞋 自家工厂的鞋子,如何找到代理? 鞋子加盟 上拼多多买东西,商家说没货,要我发手续费,他才能退款,是怎么回事,我该怎么办 我在拼多多买了十几件东西,已经二十天了,还没收到货,该怎么办 社保卡被吞当天能取吗 社保卡被社保自助机给吞了怎么办 由10个千万,20个一百,4个一组成的数是是几位数,这个数是什么? 社保卡在中国银行自助机里吞下拿不出来怎么办? 农业银行社保卡卡被吞了两个月怎么领回来? 去世老人领取工资的社保卡被atm机吞了知道密码不知道银联卡号到银行取卡要什么手续和材料? 保密柜的照片删了还能找回吗 五年级所有的 的修改符号?