selda-0.3.2.0: Multi-backend, high-level EDSL for interacting with SQL databases.

Safe HaskellNone
LanguageHaskell2010

Database.Selda.Unsafe

Description

Unsafe operations giving the user unchecked low-level control over the generated SQL.

Synopsis

Documentation

fun :: Text -> Col s a -> Col s b Source #

A unary operation. Note that the provided function name is spliced directly into the resulting SQL query. Thus, this function should ONLY be used to implement well-defined functions that are missing from Selda's standard library, and NOT in an ad hoc manner during queries.

fun2 :: Text -> Col s a -> Col s b -> Col s c Source #

Like fun, but with two arguments.

fun0 :: Text -> Col s a Source #

Like fun, but with zero arguments.

aggr :: SqlType a => Text -> Col s a -> Aggr s b Source #

Create a named aggregate function. Like fun, this function is generally unsafe and should ONLY be used to implement missing backend-specific functionality.

cast :: forall s a b. SqlType b => Col s a -> Col s b Source #

Cast a column to another type, using whichever coercion semantics are used by the underlying SQL implementation.

castAggr :: forall s a b. SqlType b => Aggr s a -> Aggr s b Source #

Cast an aggregate to another type, using whichever coercion semantics are used by the underlying SQL implementation.

unsafeSelector :: SqlRow a => Int -> Selector a b Source #

A selector indicating the nth (zero-based) column of a table.

Will cause errors in queries during compilation, execution, or both, unless handled with extreme care. You really shouldn't use it at all.