type

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.

fields

limit

Maximum number of rows returned when this statement is executed.

sql

The SQL text used to create this statement.

methods

close

Close the statement.

execute

Execute a SQL statement and if applicable return a result

prepare

Prepare this statement by compiling for efficient execution.

query

Execute the statement and return the resulting List of Rows.

queryEach

Execute the statement.

Slot Details

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[] or Str[] of keys generated
  • Return an Int with the update count

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 of Rows. The Cols are available from List.of.fields or on type.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 each. The Obj passed to the each function will be of type Row.

sql

const Str sql

The SQL text used to create this statement.