jsp批量修改数据库
做宿舍管理系统时,我想输入宿舍卫生分数,想批量输入,例如01宿舍:02宿舍:03宿舍:·······然后一个提交按钮,怎么把分数更新到卫生表对应宿舍的位置卫生表:宿舍号,...
做宿舍管理系统时,我想输入宿舍卫生分数,想批量输入,例如 01宿舍: 02宿舍: 03宿舍:·······然后一个提交按钮,怎么把分数更新到卫生表对应宿舍的位置
卫生表:宿舍号,分数
要详细代码,非常感谢 展开
卫生表:宿舍号,分数
要详细代码,非常感谢 展开
3个回答
展开全部
其实这个要是你不嫌麻烦的话倒是可以一条一条的更新 如果你想要简单一点呢 我倒有个办法
你这个语句最好做成更新 如果做成insert 的话就太浪费资源了 如果你要再加个时间列的话 那就变成 insert 合理啦 sushe ,score数组为你页面传过来的 怎么接收我想不用我写了吧
public boolean update(String[] sushe,int[] score){
Connection con=this.getCon();
PreparedStatement pre=null;
int allnum=0;
try {
pre=con.prepareStatement("update t_score set score=? where sushehao=? ");
for(int i=0;i<sushe.length;i++){
int num=0;
pre.setInt(1, score[i]);
pre.setString(2,sushe[i])
num=pre.executeUpdate();
if( num>0){
allnum++;
}
}
if(num==sushe.length){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
}
你这个语句最好做成更新 如果做成insert 的话就太浪费资源了 如果你要再加个时间列的话 那就变成 insert 合理啦 sushe ,score数组为你页面传过来的 怎么接收我想不用我写了吧
public boolean update(String[] sushe,int[] score){
Connection con=this.getCon();
PreparedStatement pre=null;
int allnum=0;
try {
pre=con.prepareStatement("update t_score set score=? where sushehao=? ");
for(int i=0;i<sushe.length;i++){
int num=0;
pre.setInt(1, score[i]);
pre.setString(2,sushe[i])
num=pre.executeUpdate();
if( num>0){
allnum++;
}
}
if(num==sushe.length){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
}
更多追问追答
追问
不好意思啊,数组传值也不会,传不过去
jsp页面:
String[] sushehao==request.getParameterValues("sushehaolist.get(i).getSushehao()");
String[] score=request.getParameterValues("score");
db16.updateWeisheng(score,sushehao);(这句话是不是有错啊)
java类:
public boolean updateWeisheng(String[] score,String[] sushehao){········}
谢谢
追答
在你的JSP页面里 只负责输入数据 也就是只要一个form表单 加input 表单元素
001宿舍:
得分:
002宿舍:
得分:
003宿舍:
得分:
然后在doform 里面接受参数 并检查是否更新成功
展开全部
<input type= "text" name= "score ">
<input type= "text" name= "score ">
<input type= "text" name= "score ">
jsp:
String[] scores = request.getParameterValues( "score");
<input type= "text" name= "score ">
<input type= "text" name= "score ">
jsp:
String[] scores = request.getParameterValues( "score");
更多追问追答
追问
sql语句怎么写呢?
String sql="update t_weisheng set score=? where sushehao=?";
pstat=conn.prepareStatement(sql);
pstat.setString(1,scores[]);
pstat.setString(1,sushehao);
flag=pstat.executeUpdate();
这样不对吧,怎么给score赋值呢,用循环吗?还是用事务处理?谢谢
追答
String[] scores = request.getParameterValues( "score");
String[] sushehaos = request.getParameterValues( "sushehao");
String sql="update t_weisheng set score=? where sushehao=?";
pstat=conn.prepareStatement(sql);
for(int i=0;i<scores.length;i++){
pstat.setString(1,scores[i]);
pstat.setString(2,sushehaos[i]);
pstat.addBatch();
}
pstat.executeBatch();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update 卫生表 set 分数=60 where 宿舍号 in (01宿舍,02宿舍,03宿舍);
追问
我想要实现的是不同的宿舍不同的值 谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询