回 帖 发 新 帖 刷新版面

主题:不知道错在哪里?

String[] bs=request.getParameterValues("department");
for(int i=0;i<bs.length;i++)
{
  ResultSet r=con.doQueryRecords("select account_duty from account where account_id='"+bs[i]+"'");
  r.next();
  String copy=r.getString("account_duty");
  out.println(copy);
  String sql="update xmqs set xmqs_copy='"+copy+"' wherexmqs_serial="+flag;
  count1=con.doInsertRecord(sql);
}
out.println(copy)能打印出循环中所有内容,但是在数据库更新中,copy只是循环中的最后一个account_duty。即:用out.println(copy)能打印出i个account_duty,但是update中的xmqs_copy只显示最后一个account_duty。这是怎么回事?
哪位大虾帮帮我,真郁闷啊!

回复列表 (共2个回复)

沙发

String sql="update xmqs set xmqs_copy='"+copy+"' wherexmqs_serial="+flag;
  count1=con.doInsertRecord(sql);
上一句是否应改成:
count1=con.doUpdateRecord(sql);
说错了别骂我.

板凳

楼主不是我说你,你写地叫程序哦

doQueryRecords()
doInsertRecord()

这两方法哪来的,写javaBean你到是说一下啊,要真是像一楼说的是doUpdateRecord()那就对了,要是你写成 doUpdate250()那一楼不就错了吗

在有也不知道是我眼睛不好还是你这个变量(flag)没定义
看修改的那条SQL语句:
String sql="update xmqs set xmqs_copy='"+copy+"' wherexmqs_serial="+flag;

wherexmqs_serial="+flag;这句话where和字段名连一起,叫你这个程序通过已经给足你面子了

我来回复

您尚未登录,请登录后再回复。点此登录或注册