ResultQuery

class ResultQuery @PublishedApi constructor(val query: RunnableQuery<*>)

The same query with every terminal returning a DataResult instead of throwing, as if wrapped in dbResult. Reached by RunnableQuery.asResult.

val senators = db.rawQuery("SELECT id, cognomen FROM senate WHERE province_id = @p")
.asResult()
.fetchObjects<Senator>("p" to 7)

Inside a transaction, return the failure from transactionResult, which rolls back on it; a plain transaction commits over it.

Constructors

Link copied to clipboard
internal constructor(query: RunnableQuery<*>)

Properties

Link copied to clipboard

Functions

Link copied to clipboard
Link copied to clipboard
inline fun <T> fetchField(params: Map<String, Any?> = emptyMap()): DataResult<T>
inline fun <T> fetchField(vararg params: Pair<String, Any?>): DataResult<T>

As RunnableQuery.fetchField - a non-nullable T still throws for a missing row.

Link copied to clipboard
inline fun <T> fetchFields(params: Map<String, Any?> = emptyMap()): DataResult<List<T>>
inline fun <T> fetchFields(vararg params: Pair<String, Any?>): DataResult<List<T>>
Link copied to clipboard
inline fun <T> fetchFieldStrict(params: Map<String, Any?> = emptyMap()): DataResult<T>
inline fun <T> fetchFieldStrict(vararg params: Pair<String, Any?>): DataResult<T>
Link copied to clipboard
inline fun <T : Any> fetchObject(params: Map<String, Any?> = emptyMap()): DataResult<T?>
inline fun <T : Any> fetchObject(vararg params: Pair<String, Any?>): DataResult<T?>
Link copied to clipboard
inline fun <T : Any> fetchObjects(params: Map<String, Any?> = emptyMap()): DataResult<List<T>>
inline fun <T : Any> fetchObjects(vararg params: Pair<String, Any?>): DataResult<List<T>>
Link copied to clipboard
inline fun <T : Any> fetchObjectStrict(params: Map<String, Any?> = emptyMap()): DataResult<T>
inline fun <T : Any> fetchObjectStrict(vararg params: Pair<String, Any?>): DataResult<T>

As RunnableQuery.fetchObjectStrict - a missing row is still thrown.

Link copied to clipboard
fun fetchRow(params: Map<String, Any?> = emptyMap()): DataResult<Row?>
fun fetchRow(vararg params: Pair<String, Any?>): DataResult<Row?>
Link copied to clipboard
fun fetchRows(params: Map<String, Any?> = emptyMap()): DataResult<List<Row>>
fun fetchRows(vararg params: Pair<String, Any?>): DataResult<List<Row>>
Link copied to clipboard
fun fetchRowStrict(params: Map<String, Any?> = emptyMap()): DataResult<Row>
fun fetchRowStrict(vararg params: Pair<String, Any?>): DataResult<Row>

As RunnableQuery.fetchRowStrict - a missing row is still thrown.

Link copied to clipboard
inline fun <T> forEachField(params: Map<String, Any?> = emptyMap(), fetchSize: Int, noinline block: (T) -> Unit): DataResult<Unit>
inline fun <T> forEachField(vararg params: Pair<String, Any?>, fetchSize: Int, noinline block: (T) -> Unit): DataResult<Unit>
Link copied to clipboard
inline fun <T : Any> forEachObject(params: Map<String, Any?> = emptyMap(), fetchSize: Int, noinline block: (T) -> Unit): DataResult<Unit>
inline fun <T : Any> forEachObject(vararg params: Pair<String, Any?>, fetchSize: Int, noinline block: (T) -> Unit): DataResult<Unit>
Link copied to clipboard
fun forEachRow(params: Map<String, Any?> = emptyMap(), fetchSize: Int, block: (Row) -> Unit): DataResult<Unit>
fun forEachRow(vararg params: Pair<String, Any?>, fetchSize: Int, block: (Row) -> Unit): DataResult<Unit>
Link copied to clipboard