JDBC 创建一个statement是否只能执行一条查询语句?
但是可以批量增删改,对吗?不知下面2位有没有看清楚问题,一个statement是否只能执行一条“查询”语句?查询,select,看清楚了吗?增删改可以批量我知道,但是我问...
但是可以批量增删改,对吗?
不知下面2位有没有看清楚问题,一个statement是否只能执行一条“查询”语句?
查询,select ,看清楚了吗 ? 增删改可以批量 我知道,但是我问的是查询 展开
不知下面2位有没有看清楚问题,一个statement是否只能执行一条“查询”语句?
查询,select ,看清楚了吗 ? 增删改可以批量 我知道,但是我问的是查询 展开
4个回答
展开全部
肯定不是只能执行一条语句,
可以执行批量的。
如果是多条更新语句的话,要把jdbc的自动提交设置为false
也就是自己手动提交,
在提交完后,再把jdbc的自动提交还原
也样就是把所有的更新语句放在一个事物里面了。
补:
是啊。可以啊。。
你看这个。。
pstmt = con.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()){
}
pstmt = con.prepareStatement(sql1);
rs = pstmt.executeQuery();
while(rs.next()){
}
pstmt = con.prepareStatement(sql2);
rs = pstmt.executeQuery();
while(rs.next()){
}
.
.
.
是这样的吗?
可以执行批量的。
如果是多条更新语句的话,要把jdbc的自动提交设置为false
也就是自己手动提交,
在提交完后,再把jdbc的自动提交还原
也样就是把所有的更新语句放在一个事物里面了。
补:
是啊。可以啊。。
你看这个。。
pstmt = con.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()){
}
pstmt = con.prepareStatement(sql1);
rs = pstmt.executeQuery();
while(rs.next()){
}
pstmt = con.prepareStatement(sql2);
rs = pstmt.executeQuery();
while(rs.next()){
}
.
.
.
是这样的吗?
2016-12-11
展开全部
肯定不是只能执行一条语句,
可以执行批量的。
可以执行批量的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//通过statement实现批处理
public static void stmtBatchMethod()throws Exception{
Connection conn=getConnection();
try {
conn.setAutoCommit(false);
Statement stmt=conn.createStatement();
for(int i=21;i<=30;i++){
String sql="insert into user_data "+" values("+(i+1)+",'stven','004')";
//加入批处理任务
stmt.addBatch(sql);
}
//实行批处理任务
stmt.executeBatch();
conn.commit();
close(conn,stmt,null);
} catch (Exception e) {
e.printStackTrace();
}
public static void stmtBatchMethod()throws Exception{
Connection conn=getConnection();
try {
conn.setAutoCommit(false);
Statement stmt=conn.createStatement();
for(int i=21;i<=30;i++){
String sql="insert into user_data "+" values("+(i+1)+",'stven','004')";
//加入批处理任务
stmt.addBatch(sql);
}
//实行批处理任务
stmt.executeBatch();
conn.commit();
close(conn,stmt,null);
} catch (Exception e) {
e.printStackTrace();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你如果要执行两条的话,还得把statement重新赋值一下,但以前的结果得放再两个不同的ResultSet中
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询