module Database.Custom.MySQL (
module Database.Relational,
relationalQuery,
insertValue, insertValueNoPH, insertQuery,
update, updateNoPH,
delete, deleteNoPH,
) where
import Language.SQL.Keyword (Keyword)
import Database.Relational.Schema.MySQL.Config (config)
import Database.Relational hiding
(relationalQuery,
insertValue, insertValueNoPH, insertQuery,
update, updateNoPH,
delete, deleteNoPH, )
relationalQuery :: Relation p r
-> [Keyword]
-> Query p r
relationalQuery :: forall p r. Relation p r -> [Keyword] -> Query p r
relationalQuery = forall p r. Config -> Relation p r -> [Keyword] -> Query p r
relationalQuery_ Config
config
insertValue :: TableDerivable r
=> Register r (PlaceHolders p)
-> Insert p
insertValue :: forall r p.
TableDerivable r =>
Register r (PlaceHolders p) -> Insert p
insertValue = forall r p.
TableDerivable r =>
Config -> Register r (PlaceHolders p) -> Insert p
insertValue' Config
config
insertValueNoPH :: TableDerivable r
=> Register r ()
-> Insert ()
insertValueNoPH :: forall r. TableDerivable r => Register r () -> Insert ()
insertValueNoPH Register r ()
body = forall r p.
TableDerivable r =>
Register r (PlaceHolders p) -> Insert p
insertValue forall a b. (a -> b) -> a -> b
$ Register r ()
body forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> forall (m :: * -> *) a. Monad m => a -> m a
return PlaceHolders ()
unitPH
insertQuery :: TableDerivable r => Pi r r' -> Relation p r' -> InsertQuery p
insertQuery :: forall r r' p.
TableDerivable r =>
Pi r r' -> Relation p r' -> InsertQuery p
insertQuery = forall r r' p.
TableDerivable r =>
Config -> Pi r r' -> Relation p r' -> InsertQuery p
insertQuery' Config
config
update :: TableDerivable r
=> (Record Flat r -> Assign r (PlaceHolders p))
-> Update p
update :: forall r p.
TableDerivable r =>
(Record Flat r -> Assign r (PlaceHolders p)) -> Update p
update = forall r p.
TableDerivable r =>
Config -> (Record Flat r -> Assign r (PlaceHolders p)) -> Update p
update' Config
config
updateNoPH :: TableDerivable r
=> (Record Flat r -> Assign r ())
-> Update ()
updateNoPH :: forall r.
TableDerivable r =>
(Record Flat r -> Assign r ()) -> Update ()
updateNoPH Record Flat r -> Assign r ()
body = forall r p.
TableDerivable r =>
(Record Flat r -> Assign r (PlaceHolders p)) -> Update p
update forall a b. (a -> b) -> a -> b
$ (forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> forall (m :: * -> *) a. Monad m => a -> m a
return PlaceHolders ()
unitPH) forall b c a. (b -> c) -> (a -> b) -> a -> c
. Record Flat r -> Assign r ()
body
delete :: TableDerivable r
=> (Record Flat r -> Restrict (PlaceHolders p))
-> Delete p
delete :: forall r p.
TableDerivable r =>
(Record Flat r -> Restrict (PlaceHolders p)) -> Delete p
delete = forall r p.
TableDerivable r =>
Config -> (Record Flat r -> Restrict (PlaceHolders p)) -> Delete p
delete' Config
config
deleteNoPH :: TableDerivable r
=> (Record Flat r -> Restrict ())
-> Delete ()
deleteNoPH :: forall r.
TableDerivable r =>
(Record Flat r -> Restrict ()) -> Delete ()
deleteNoPH Record Flat r -> Restrict ()
body = forall r p.
TableDerivable r =>
(Record Flat r -> Restrict (PlaceHolders p)) -> Delete p
delete forall a b. (a -> b) -> a -> b
$ (forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>> forall (m :: * -> *) a. Monad m => a -> m a
return PlaceHolders ()
unitPH) forall b c a. (b -> c) -> (a -> b) -> a -> c
. Record Flat r -> Restrict ()
body