java.sql.SQLException: No value specified for parameter 2 at com.mysql.jdbc.SQLError.create 小Bug异常

public boolean updateMemberslnfo(MembersInfo membersInfo) throws SQLException{
StringBuffer sqlBuffer = new StringBuffer("UPDATE membersinfo SET ");
boolean check = true;
List<Object> params = new ArrayList<Object>();
if(membersInfo.getMname()!=null){
sqlBuffer.append(" mname=? ");
check = false;
params.add(membersInfo.getMname());
}
if(membersInfo.getMgender()!=null){
sqlBuffer =check?sqlBuffer.append(" mgender=? "):sqlBuffer.append(" ,mgender=? ");
check = false;
params.add(membersInfo.getMgender());
}
if(membersInfo.getMage()!=null){
sqlBuffer = check?sqlBuffer.append(" mage=? "):sqlBuffer.append(" ,mage=? ");
check = false;
params.add(membersInfo.getMage());
}
if(membersInfo.getMaddress()!=null){
sqlBuffer = check?sqlBuffer.append(" maddress=? "):sqlBuffer.append(" ,maddress=? ");
check = false;
params.add(membersInfo.getMaddress());
}
if(membersInfo.getMemall()!=null){
sqlBuffer = check?sqlBuffer.append(" memall=? "):sqlBuffer.append(" ,memall=? ");
check = false;
params.add(membersInfo.getMemall());
}
sqlBuffer.append("  where `mid`=?");
params.add(membersInfo.getMid());
boolean pd = executeUpdate(sqlBuffer.toString(),params)>0?true:false;
return pd;


}


进入此方法后params变成    [[洪波, 男, 1, 北京市丰台区长辛店大厦105室, mnbo@gand.com, 4]] 多 了 一 对 方 括 号


由于是Object数组形式 而我们是List<>泛型集合要写成  boolean pd = executeUpdate(sqlBuffer.toString(),params.toArray())>0?true:false;  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值