Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java namedParameterJdbctemplate更新,包含多个要更新的字段_Java_Mysql_Sql_Spring - Fatal编程技术网

Java namedParameterJdbctemplate更新,包含多个要更新的字段

Java namedParameterJdbctemplate更新,包含多个要更新的字段,java,mysql,sql,spring,Java,Mysql,Sql,Spring,正在尝试更新表中的多个列值。 我缺少的是一点帮助 dao方法类似于… dao类计划的所有字段都填充了适当的数据 public void updatePlan(Plan plan) { SqlParameterSource mapSqlParameterSource = new MapSqlParameterSource().addValue("id", plan.getId()) .addValue("plan_name", plan.getPlan())

正在尝试更新表中的多个列值。
我缺少的是一点帮助

dao
方法类似于…
dao
类计划的所有字段都填充了适当的数据

 public void updatePlan(Plan plan) {
    SqlParameterSource mapSqlParameterSource = new MapSqlParameterSource().addValue("id", plan.getId())
            .addValue("plan_name", plan.getPlan())
            .addValue("price_category", plan.getPrice_category())
            .addValue("updated_by", subscriptionPlan.getId());

    String UPDATE_PLAN = "UPDATE plan_table SET(plan_name= :plan_name, price_category= :price_category, updated_by= :id) where id=:id)";

    SqlParameterSource parameterSource = new BeanPropertySqlParameterSource(subscriptionPlan);
    namedParameterJdbcTemplate.update(UPDATE_PLAN, mapSqlParameterSource);
}
错误是…(MySQL数据库-5.6.43,工作台-6.3.9)

org.springframework.jdbc.BadSqlGrammarException:

PreparedStatementCallback;错误的SQL语法[更新webstat_计划集(计划名称=?,价格类别=?,更新人=?),其中id=?)];嵌套异常为com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解正确的语法


问题在于您的SQL查询。 更新表时不需要括号

使用更新您的查询


更新计划\表集合计划\名称=:计划\名称,价格\类别=:价格\类别,更新者=:id,其中id=:id

问题与您的SQL查询有关。 更新表时不需要括号

使用更新您的查询


更新计划\表集合计划\名称=:计划\名称,价格\类别=:价格\类别,更新者=:id,其中id=:id

您是否尝试过执行SQL语句(当然是使用实值而不是占位符)?这可能有助于发现语法问题。谢谢…的建议。帮助。我真傻。虽然SET后面的括号不是必需的,但是您是否尝试过执行SQL语句(当然是使用实数而不是占位符)?这可能有助于发现语法问题。谢谢…的建议。帮助。我真傻。虽然设置后的括号不是必需的。错误日志是什么,如果你想从别人那里得到帮助,请格式化并改进你的问题。错误日志是什么,如果你想从别人那里得到帮助,请格式化并改进你的问题。