sql事宜操作

sql事务操作例1:try { conn DriverManager.getConnection(jdbc:microsoft:sqlserver://localhost:1433

sql事务操作
例1:

try {conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=JDBCTEST "," username","userpwd“);conn.setAutoCommit(false);//禁止自动提交,设置回滚点stmt = conn.createStatement();stmt.executeUpdate(“alter table …”); //数据库更新操作1stmt.executeUpdate(“insert into table …”); //数据库更新操作2conn.commit(); //事务提交con.setAutoCommit(true);// 恢复JDBC事务的默认提交方式 }catch(Exception ex) { ex.printStackTrace();         try {conn.rollback(); //操作不成功则回滚}catch(Exception e) {e.printStackTrace();}}



例2:
UserTransaction transaction = sessionContext.getUserTransaction(); //获得JTA事务try {    //conn.setAutoCommit(false); JTA事物中不需要关闭自动提交模式       transaction.begin(); //开始JTA事务   dbc.executeUpdate("delete from bylaw where ID=" + sID);   dbc.executeUpdate("delete from bylaw _content where ID=" + sID);   dbc.executeUpdate("delete from bylaw _affix where bylawid=" + sID); //conn.commit();? //JTA事务中不要嵌套JDBC事务!否则会抛出异常   transaction.commit(); //提交JTA事务        dbc.close();        return 1;    } catch (SQLException e) {          transaction.rollback();}//JTA事务回滚