| 发表于:2007-05-20 19:47:13 楼主 |
我写了一个函数, 想要把删除和插入联合成一个事务, 要么全执行, 要么都不执行? 不知道 怎么写? public boolean addbatch(int roleid, int permissionid[]) { try { // 先删除所有的数据, 然后再插入所有的数据 ssql = "delete from rolespermissions where roleid= " + roleid; stmt = conn.createstatement(); rs = stmt.EXECutequery(ssql); preparedstatement stmt = conn .preparestatement( "insert into rolespermissions values(?,?,?) "); for (int i = 0; i < permissionid.length; i++) { stmt.setint(2, roleid); stmt.setint(1, permissionid[i]); stmt.addbatch(); } int[] counts=stmt.EXECutebatch(); } catch (sqlexception e) { // todo auto-generated catch block e.printstacktrace(); } return flag; } |
|
|
|
|