Contando filas afectadas usando Groovy SQL
-
21-12-2019 - |
Pregunta
Supongamos que tengo la siguiente definición de tabla SQL:
create table test(
id number(5) primary key
);
Además, me gustaría ejecutar INSERT
y DELETE
declaraciones en dicha tabla utilizando el soporte SQL de Groovy.
Dado el siguiente código, que ejecuta un INSERT
declaración:
Sql db = new Sql(some_dataSource)
String query = "insert into test (id) values (999)"
def result = db.execute(query)
¿Puedo saber, dentro de este código, cuántas filas se insertaron en
test
(en este caso, 1)?Es el
result
¿Variable útil para determinar esto?
Intenté consultar la documentación de soporte de SQL de Groovy. aquí y aquí, pero los ejemplos proporcionados sólo parecen contar filas por encima SELECT
declaraciones.
¡Gracias!
Solución
Puede obtener el número de filas insertadas con Sql.getUpdateCount()
.Ejemplo:
db.execute(query)
println db.updateCount
El valor de retorno de la ejecución es un valor booleano que indica si la declaración se ejecutó correctamente.
Los documentos API para Sql.execute()
tener una explicación completa.