Statement
class Statement : Obj
Statement is an executable statement for a specific database. A statement may be executed immediately or prepared and executed later with parameters. See pod-doc.
Maximum number of rows returned when this statement is executed
The SQL text used to create this statement
Prepare this statement by compiling for efficient execution
Execute the statement
Execute a batch of commands on a prepared Statement
Execute the statement and return the resulting List of Rows
Close the statement
Execute a SQL statement and if applicable return a result
Execute the statement
Void close()
Close the statement.
Obj execute([Str:Obj]? params)
Execute a SQL statement and if applicable return a result:
- If the statement is a query or procedure which produces a result set, then return
Row[] - If the statement is an insert and auto-generated keys are supported by the connector then return
Int[]orStr[]of keys generated - Return an
Intwith the update count
Int?[] executeBatch([Str:Obj]?[] paramsList)
Execute a batch of commands on a prepared Statement. If all commands execute successfully, returns an array of update counts.
For each element in the array, if the element is non-null, then it represents an update count giving the number of rows in the database that were affected by the command's execution.
If a given array element is null, it indicates that the command was processed successfully but that the number of rows affected is unknown.
If one of the commands in a batch update fails to execute properly, this method throws a SqlErr that wraps a java.sql.BatchUpdateException, and a JDBC driver may or may not continue to process the remaining commands in the batch, consistent with the underlying DBMS -- either always continuing to process commands or never continuing to process commands.
Int? : limit
Maximum number of rows returned when this statement is executed. If limit is exceeded rows are silently dropped. A value of null indicates no limit.
This prepare()
Prepare this statement by compiling for efficient execution. Return this.
Row[] query([Str:Obj]? params)
Execute the statement and return the resulting List of Rows. The Cols are available from List.of.fields or on type.fields of each row instance.
Void queryEach([Str:Obj]? params, |Row| eachFunc)
Execute the statement. For each row in the result, invoke the specified function eachFunc.
Obj? queryEachWhile([Str:Obj]? params, |Row->Obj?| eachFunc)
Execute the statement. For each row in the result, invoke the specified function eachFunc. If the function returns non-null, then break the iteration and return the resulting object. Return null if the function returns null for every item.
const Str : sql
The SQL text used to create this statement.