Java 使用namedjdbctemplate执行alter以添加列时发生异常

Java 使用namedjdbctemplate执行alter以添加列时发生异常,java,mysql,h2,jdbctemplate,badsqlgrammarexception,Java,Mysql,H2,Jdbctemplate,Badsqlgrammarexception,我有另一个问题 ALTER TABLE Table_name ADD(coumn1 DOUBLE,coumn2 DOUBLE); 我正在使用 this.namedParameterJdbcTemplate.execute(alterTableSQL, namedValues, new PreparedStatementCallback<Boolean>() { @Override public Boolean doInPreparedStatement(Pre

我有另一个问题

ALTER TABLE Table_name  ADD(coumn1  DOUBLE,coumn2  DOUBLE);
我正在使用

this.namedParameterJdbcTemplate.execute(alterTableSQL, namedValues, new PreparedStatementCallback<Boolean>() {
    @Override
    public Boolean doInPreparedStatement(PreparedStatement ps) throws SQLException, DataAccessException {
        return ps.execute();
    }
});
this.namedParameterJdbcTemplate.execute(alterTableSQL,NamedValue,new PreparedStatementCallback()){
@凌驾
公共布尔doInPreparedStatement(PreparedStatement ps)抛出SQLException、DataAccessException{
返回ps.execute();
}
});
在执行语句时,它向我抛出以下异常

org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [ALTER TABLE <sample>  ADD (
 coumn1  DOUBLE,
 coumn2  DOUBLE
);]; nested exception is org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "ALTER TABLE TEMPLATE_1  ADD ([*]
 coumn1  DOUBLE,
 coumn2  DOUBLE
); "; expected "identifier"; SQL statement:
ALTER TABLE template_1  ADD (
 coumn1  DOUBLE,
 coumn2  DOUBLE
); [42001-160]
org.springframework.jdbc.BadSqlGrammarException:PreparedStatementCallback;错误的SQL语法[ALTER TABLE ADD](
coumn1 DOUBLE,
双人床
);]; 嵌套异常为org.h2.jdbc.JdbcSQLException:SQL语句“ALTER TABLE TEMPLATE_1 ADD([*]
coumn1 DOUBLE,
双人床
); "; 预期的“标识符”;SQL语句:
更改表格模板\u 1添加(
coumn1 DOUBLE,
双人床
); [42001-160]

我应该如何处理这个问题?

您可以在构建查询字符串的地方添加java代码吗?您使用的是MySQL还是H2?您的问题被标记为“mysql”,但您的异常stacktrace提到了H2。对于我的测试用例,我使用H2。