# Statement

abstract class Statement<out T>(val type: StatementType, val targets: List<Table>)

Base class representing an SQL statement that can be executed.

#### Parameters

type

The specific StatementType, usually represented by the leading word in the command syntax.

targets

Tables on which to perform the SQL statement.

#### Inheritors

AbstractQuery
ExplainQuery
DeleteStatement
InsertSelectStatement
MergeStatement
ReturningStatement
UpdateBuilder

## Constructors

Statement
Link copied to clipboard
constructor(type: StatementType, targets: List<Table>)

## Properties

targets
Link copied to clipboard
val targets: List<Table>
type
Link copied to clipboard
val type: StatementType

## Functions

arguments
Link copied to clipboard
abstract fun arguments(): Iterable<Iterable<Pair<IColumnType<*>, Any?>>>

Returns all mappings of columns and expression types to their values needed to prepare an SQL statement.

prepareSQL
Link copied to clipboard
abstract fun prepareSQL(transaction: Transaction, prepared: Boolean = true): String

Returns the string representation of an SQL statement.