persistent-0.1.0: Type-safe, non-relational, multi-backend persistence.

Database.Persist.GenericSql

Description

This is a helper module for creating SQL backends. Regular users do not need to use this module.

Documentation

data GenericSql m Source

Constructors

GenericSql 

Fields

gsWithStmt :: forall a. String -> [PersistValue] -> (RowPopper m -> m a) -> m a
 
gsExecute :: String -> [PersistValue] -> m ()
 
gsInsert :: String -> [String] -> [PersistValue] -> m Int64
 
gsEntityDefExists :: String -> m Bool
 
gsKeyType :: String
 
gsShowSqlType :: SqlType -> String
 

insert :: (Monad m, PersistEntity val) => GenericSql m -> val -> m (Key val)Source

get :: (PersistEntity v, Monad m) => GenericSql m -> Key v -> m (Maybe v)Source

replace :: (PersistEntity v, Monad m) => GenericSql m -> Key v -> v -> m ()Source

select :: (PersistEntity val, Monad m) => GenericSql m -> [Filter val] -> [Order val] -> m [(Key val, val)]Source

update :: (PersistEntity v, Monad m) => GenericSql m -> Key v -> [Update v] -> m ()Source

updateWhere :: (PersistEntity v, Monad m) => GenericSql m -> [Filter v] -> [Update v] -> m ()Source

getBy :: (PersistEntity v, Monad m) => GenericSql m -> Unique v -> m (Maybe (Key v, v))Source

delete :: (PersistEntity v, Monad m) => GenericSql m -> Key v -> m ()Source