estado SQL [nulo]; código de error [0]; ORA-00900: instrucción SQL no válida con JdbcTemplate

Pawan Patil:

Estoy frente a una excepción durante la ejecución de la siguiente consulta JdbcTemplate

update TEMP_BRD_STATS SET STATS=null WHERE BRDC_STAT_ID=?

y siguiente es la excepción

org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; Excepción de SQL para SQL sin categoría [Actualización TEMP_BRD_STATS SET STATS = null DONDE BRDC_STAT_ID =?]; estado SQL [nulo]; código de error [0]; ORA-00900: instrucción SQL no válida

Donde TEMP_BRD_STATS es mi nombre de tabla de estadísticas y BRDC_STAT_ID son la columna en mi mesa

Nota: - Se permite nulo para la columna STATS

Sin embargo, puedo ejecutar correctamente la consulta SQL en un revelador proporcionando valor de la columna BRDC_STAT_ID válida.

por ejemplo,

update TEMP_BRD_STATS SET STATS=null WHERE BRDC_STAT_ID=523;

Editar: El siguiente es el código Java

result = this.jdbcTemplate.query("update TEMP_BRD_STATS SET STATS=null WHERE BRDC_STAT_ID=?",  new Object[] {523}, new QueryResultSetExtractor());

valor de la columna se está cambiado después de ejecutar el código anterior, aunque se lanza una excepción.

Supongamos que mi columna estadística está teniendo valor 'éxito' y después de ejecutar por encima del valor de código Java se está cambiado a nulo, pero aún así está lanzando una excepción. tipo de escenario extraño.

Joop Eggen:

El parámetro ?evidentemente no se ha rellenado Tal vez algunos parámetros similares.:

new Object[] { brdStatId }

En general, JDBC que podría haber sido el uso de la no PreparedStatement.executeUpdate()pero la versión de la clase base Statement.executeUpdate(String sql).


Después añadió código en cuestión:

Ah, consulta (SELECT) y actualización (INSERT / UPDATE) mezclados:

this.jdbcTemplate.update("update TEMP_BRD_STATS SET STATS=null WHERE BRDC_STAT_ID=?", 523);

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=202641&siteId=1
Recomendado
Clasificación