java jsp中执行多个条件的sql语句
java相关的jsp中,要用执行一条语句,同时更新两列,但更新两列的条件不同。比如在message表中:有两个字段uName,RName;这两个字段里面都有很多个zhan...
java相关的jsp中,要用执行一条语句,同时更新两列,但更新两列的条件不同。比如在message表中:有两个字段uName,RName;这两个字段里面都有很多个zhangsan,lisi这两个值。条件是在set uName='zhangsan' where uName='lisi'并且set RName='zhangsan' where RName=‘lisi'。
就是把RName与uName中字段为lisi的都改为zhangsan。
为了便于理解表如图:uName RName
xiaoming zhangsan
lisi xiaoli
zhangsan lisi
lisi xiaowang
zhangsan xiaowang
分开来写就是set uName='zhangsan' where uName='lisi';
set RName='zhangsan' where uName='lisi';
我的目的是;我要把这个语句传递给java中的一个方法,让它执行该操作。如果分开写就要传递两次,创建连接,从数据库中更新数据,关闭连接,都需要两次。我想让它只进行一次。这就需要把这两个语句合成一个。该怎么写?好像数据库中有个事务的使用,是不是也可以达到这个目的? 展开
就是把RName与uName中字段为lisi的都改为zhangsan。
为了便于理解表如图:uName RName
xiaoming zhangsan
lisi xiaoli
zhangsan lisi
lisi xiaowang
zhangsan xiaowang
分开来写就是set uName='zhangsan' where uName='lisi';
set RName='zhangsan' where uName='lisi';
我的目的是;我要把这个语句传递给java中的一个方法,让它执行该操作。如果分开写就要传递两次,创建连接,从数据库中更新数据,关闭连接,都需要两次。我想让它只进行一次。这就需要把这两个语句合成一个。该怎么写?好像数据库中有个事务的使用,是不是也可以达到这个目的? 展开
展开全部
connect();//创建数据库连接
conn.setAutoCommit(false);//设置手动提交事务
Statement stmt = conn.createStatement();
stmt.addBatch("update...set uName='zhangsan' where uName='lisi'");
stmt.addBatch("update...set RName='zhangsan' where RName='lisi'");
stmt.executeBatch();//执行批处理
conn.commit();//提交事务
stmt.close();
conn.close();关闭连接
conn.setAutoCommit(false);//设置手动提交事务
Statement stmt = conn.createStatement();
stmt.addBatch("update...set uName='zhangsan' where uName='lisi'");
stmt.addBatch("update...set RName='zhangsan' where RName='lisi'");
stmt.executeBatch();//执行批处理
conn.commit();//提交事务
stmt.close();
conn.close();关闭连接
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询