class sql::Statement
sys::Obj sql::Statement
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.
- close
-
Void close()
Close the statement.
- execute
-
Obj execute([Str:Obj]? params := null)
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
Int
with the update count
- If the statement is a query or procedure which produces a result set, then return
- executeBatch
-
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.
- limit
-
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.
- prepare
-
This prepare()
Prepare this statement by compiling for efficient execution. Return this.
- query
-
Row[] query([Str:Obj]? params := null)
Execute the statement and return the resulting
List
ofRows
. TheCols
are available fromList.of.fields
or ontype.fields
of each row instance. - queryEach
-
Void queryEach([Str:Obj]? params, |Row| eachFunc)
Execute the statement. For each row in the result, invoke the specified function
eachFunc
. - queryEachWhile
-
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. - sql
-
const Str sql
The SQL text used to create this statement.