• 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;  
  • 相关阅读:
    【8.12测试】辉夜的见面礼
    全国标准信息公共服务平台
    win10易升更新
    WPF 中的父子窗口
    C#通过事件跨类调用WPF主窗口中的控件
    Apache Hudi 介绍与应用
    【总结】Spark任务的core,executor,memory资源配置方法
    springboot基于spark-launcher构建rest api远程提交spark任务
    spark 输出到hdfs小文件过多
    大数据
  • 原文地址:https://www.cnblogs.com/blogspring/p/10123279.html
Copyright © 2020-2023  润新知