| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Opaleye.Values
Synopsis
- valuesSafe :: Default ValuesspecSafe fields fields => [fields] -> Select fields
- valuesExplicit :: Unpackspec fields fields' -> Valuesspec fields fields' -> [fields] -> Select fields'
- valuesSafeExplicit :: ValuesspecSafe fields fields' -> [fields] -> Select fields'
- valuesUnsafeExplicit :: Unpackspec fields fields' -> Valuesspec fields fields' -> [fields] -> Select fields'
- data ValuesspecSafe columns columns'
- valuesspecField :: IsSqlType a => ValuesspecSafe (Column a) (Column a)
- values :: (Default Valuesspec fields fields, Default Unpackspec fields fields) => [fields] -> Select fields
- valuesUnsafe :: (Default Valuesspec fields fields, Default Unpackspec fields fields) => [fields] -> Select fields
Documentation
valuesSafe :: Default ValuesspecSafe fields fields => [fields] -> Select fields Source #
valuesSafe implements Postgres's VALUES construct and allows you
to create a SELECT that consists of the given rows.
Example type specialization:
valuesSafe :: [(Field a, Field b)] -> Select (Field a, Field b)
Assuming the makeAdaptorAndInstance splice has been run for the
product type Foo:
valuesSafe :: [Foo (Field a) (Field b) (Field c)] -> S.Select (Foo (Field a) (Field b) (Field c))
Explicit versions
valuesExplicit :: Unpackspec fields fields' -> Valuesspec fields fields' -> [fields] -> Select fields' Source #
valuesSafeExplicit :: ValuesspecSafe fields fields' -> [fields] -> Select fields' Source #
valuesUnsafeExplicit :: Unpackspec fields fields' -> Valuesspec fields fields' -> [fields] -> Select fields' Source #
Forward compatible version of unsafe valuesExplicit that will
not be deprecated in 0.7, but in 0.8.
Adaptors
data ValuesspecSafe columns columns' Source #
Instances
valuesspecField :: IsSqlType a => ValuesspecSafe (Column a) (Column a) Source #
Deprecated versions
values :: (Default Valuesspec fields fields, Default Unpackspec fields fields) => [fields] -> Select fields Source #
Please note that values of an empty list generates incorrect
queries when mixed with OUTER/LEFT/RIGHT JOIN. You should
use valuesSafe instead. valuesSafe will replace values in
version 0.7.
valuesUnsafe :: (Default Valuesspec fields fields, Default Unpackspec fields fields) => [fields] -> Select fields Source #
Forward-compatible version of unsafe values that will not be
deprecated in 0.7, but in 0.8.