while (rs.next())//如果存在相同号,则设置更新的SQL语句
{
//out.println("hahhahah");
ResultSetMetaData rsmd=rs.getMetaData();
int in=0;
String s="";
for(int i=0;i<id.length;i++)
{
int intId = Integer.parseInt(id[i]);
String base_col=rsmd.getColumnName(intId);//取出数据库中的字段的名称
//out.println(base_col);
sqld = ""+base_col+"= '"+array[intId-1]+"'"+",";
//out.println(sqld);
s=s+sqld;
//out.println(sql_min);
}
s=s.substring(0,s.length()-1); sql_col="UPDATE client SET "+s+"where insur_code='"+ins_code+"'";
//out.println(sql_col);
pstmt = con.prepareStatement(sql_col);
pstmt.executeUpdate();
pstmt.close();
pstmt=null;
}
{
//out.println("hahhahah");
ResultSetMetaData rsmd=rs.getMetaData();
int in=0;
String s="";
for(int i=0;i<id.length;i++)
{
int intId = Integer.parseInt(id[i]);
String base_col=rsmd.getColumnName(intId);//取出数据库中的字段的名称
//out.println(base_col);
sqld = ""+base_col+"= '"+array[intId-1]+"'"+",";
//out.println(sqld);
s=s+sqld;
//out.println(sql_min);
}
s=s.substring(0,s.length()-1); sql_col="UPDATE client SET "+s+"where insur_code='"+ins_code+"'";
//out.println(sql_col);
pstmt = con.prepareStatement(sql_col);
pstmt.executeUpdate();
pstmt.close();
pstmt=null;
}
好象是rs美关掉,又打开一个rs
应该就可以解决问题了
应该就可以解决问题了支持!
检查看看你的con.prepareStatement(sql_col);和rs是不是用的同一个Connection