Database.Selda

Running queries

class MonadIO m

class MonadSelda m

data SeldaError

data ValidationError

data SeldaT m a

type SeldaM

data Table a

data Query s a

data Col s a

class Result r

query

transaction

setLocalCache

Constructing queries

data Selector t a

(!)

data Assignment s t

with

class SqlType a

data Text

type family Cols s a where ...

class Columns a

data Order

data a :*: b

select

selectValues

restrict

limit

order

ascending

descending

Expressions over columns

(.==)

(./=)

(.>)

(.<)

(.>=)

(.<=)

like

(.&&)

(.||)

not_

literal

int

float

text

true

false

null_

roundTo

length_

isNull

Converting between column types

round_

just

fromBool

fromInt

toString

Inner queries

data Aggr s a

class Aggregates a

type family OuterCols a where ...

type family JoinCols a where ...

data Inner s

class MinMax a

leftJoin

aggregate

groupBy

count

avg

sum_

max_

min_

Modifying tables

class Insert a

insert

insert_

insertWithPK

def

update

update_

deleteFrom

deleteFrom_

Defining schemas

class TableSpec a

type family ColSpecs a where ...

data ColSpec a

data TableName

data ColName

class NonNull a

type family IsNullable a where ...

data Nullable

data NotNullable

class Append a b

type family a :++: b where ...

type family Selectors t a where ...

class HasSelectors t a

table

tableWithSelectors

selectors

required

optional

primary

autoPrimary

Creating and dropping tables

createTable

tryCreateTable

dropTable

tryDropTable

Compiling and inspecting queries

data OnError

compile

compileCreateTable

compileDropTable

compileInsert

compileUpdate

Tuple convenience functions

class Tup a

type family Head a where ...

first

second

third

fourth

fifth

sixth

seventh

eighth

ninth

tenth