文章标题

3 篇文章 0 订阅

jdbc什么情况下启用事务?

只有当一次执行多个sql语句的时候开启事务才有用,比如

PreparedStatement ps=null;
Connection conn=getConn();
try{
    #1
    conn.setAutoCommit(false);
    String sql1="insert into table values(?)";
    String sql2="delete from table where id=1";
    ps=conn.preparedStatement(sql1);
    ps.setObject(1,new Object());
    ps.executeQuery(sql1);
    ps.executeQuery(sql2);
    #4
    ps.commit();
}catch(SQLException e){
    #2
    conn.rollback();
}finally{
    #3
    conn.setAutoCommit(true);
    closeConn(conn);
}

如果一次只执行一条sql语句,则不需要开启事务
问题:一次执行两条需要参数的sql语句,PreparedStatement怎么判断哪个参数属于哪个语句?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值