psql-0.0.0: PostgreSQL client
Safe HaskellNone
LanguageHaskell2010

PostgreSQL.Query

Description

In here one will find the things to execute database queries.

Synopsis

Query execution

execute Source #

Arguments

:: (Executable statement, Query query) 
=> statement param

Statement

-> param

Statement input

-> query (NativeResult query) 

Execute a statement.

Since: 0.0.0

execute_ Source #

Arguments

:: (Executable statement, Query query) 
=> statement param

Statement

-> param

Statement input

-> query () 

Like execute but does not concern itself with the result handle.

Since: 0.0.0

query Source #

Arguments

:: (Executable statement, Query query, AutoRow row) 
=> statement param

Query statement

-> param

Query parameter

-> query (Vector row) 

Perform a parameterized query.

Since: 0.0.0

queryWith Source #

Arguments

:: (Executable statement, Query query) 
=> statement param

Query statement

-> param

Query parameter

-> Result row

Result row processor

-> query row 

Perform a parameterized query. This also lets you specify the result processor explicitly.

Since: 0.0.0

Class

class Monad query => Query query where Source #

PostgreSQL query

Since: 0.0.0

Associated Types

type NativeResult query :: Type Source #

Native query result

Since: 0.0.0

Methods

executeStatement Source #

Arguments

:: Statement a

Statement

-> a

Statement input

-> query (NativeResult query) 

Execute a statement.

Since: 0.0.0

executePreparedStatement Source #

Arguments

:: PreparedStatement a

Prepared statement

-> a

Statement input

-> query (NativeResult query) 

Execute a previously prepared statement.

Since: 0.0.0

withPreparedStatement Source #

Arguments

:: Statement a

Statement to prepare

-> (PreparedStatement a -> query r)

Scope within the prepared statement may be used

-> query r 

Prepare a statement. The prepared statement is only valid within the provided continuation.

Since: 0.0.0

processResult Source #

Arguments

:: NativeResult query

Result

-> Result a

Result processor

-> query a 

Process the result object.

Since: 0.0.0

Instances

Instances details
(MonadIO m, MonadMask m) => Query (QueryT m) Source # 
Instance details

Defined in PostgreSQL.Query

Associated Types

type NativeResult (QueryT m) Source #

Interpreter

data QueryT m a Source #

Interpreter for Query

Since: 0.0.0

Instances

Instances details
MonadTrans QueryT Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

lift :: Monad m => m a -> QueryT m a #

MonadWriter s m => MonadWriter s (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

writer :: (a, s) -> QueryT m a #

tell :: s -> QueryT m () #

listen :: QueryT m a -> QueryT m (a, s) #

pass :: QueryT m (a, s -> s) -> QueryT m a #

MonadState s m => MonadState s (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

get :: QueryT m s #

put :: s -> QueryT m () #

state :: (s -> (a, s)) -> QueryT m a #

MonadReader r m => MonadReader r (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

ask :: QueryT m r #

local :: (r -> r) -> QueryT m a -> QueryT m a #

reader :: (r -> a) -> QueryT m a #

Monad m => MonadError Errors (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

throwError :: Errors -> QueryT m a #

catchError :: QueryT m a -> (Errors -> QueryT m a) -> QueryT m a #

Monad m => Monad (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

(>>=) :: QueryT m a -> (a -> QueryT m b) -> QueryT m b #

(>>) :: QueryT m a -> QueryT m b -> QueryT m b #

return :: a -> QueryT m a #

Functor m => Functor (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

fmap :: (a -> b) -> QueryT m a -> QueryT m b #

(<$) :: a -> QueryT m b -> QueryT m a #

Monad m => Applicative (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

pure :: a -> QueryT m a #

(<*>) :: QueryT m (a -> b) -> QueryT m a -> QueryT m b #

liftA2 :: (a -> b -> c) -> QueryT m a -> QueryT m b -> QueryT m c #

(*>) :: QueryT m a -> QueryT m b -> QueryT m b #

(<*) :: QueryT m a -> QueryT m b -> QueryT m a #

MonadIO m => MonadIO (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

liftIO :: IO a -> QueryT m a #

MonadThrow m => MonadThrow (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

throwM :: Exception e => e -> QueryT m a #

MonadCatch m => MonadCatch (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

catch :: Exception e => QueryT m a -> (e -> QueryT m a) -> QueryT m a #

MonadMask m => MonadMask (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

mask :: ((forall a. QueryT m a -> QueryT m a) -> QueryT m b) -> QueryT m b #

uninterruptibleMask :: ((forall a. QueryT m a -> QueryT m a) -> QueryT m b) -> QueryT m b #

generalBracket :: QueryT m a -> (a -> ExitCase b -> QueryT m c) -> (a -> QueryT m b) -> QueryT m (b, c) #

Monad m => Alt (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

(<!>) :: QueryT m a -> QueryT m a -> QueryT m a

some :: Applicative (QueryT m) => QueryT m a -> QueryT m [a]

many :: Applicative (QueryT m) => QueryT m a -> QueryT m [a]

Monad m => Apply (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

(<.>) :: QueryT m (a -> b) -> QueryT m a -> QueryT m b

(.>) :: QueryT m a -> QueryT m b -> QueryT m b

(<.) :: QueryT m a -> QueryT m b -> QueryT m a

liftF2 :: (a -> b -> c) -> QueryT m a -> QueryT m b -> QueryT m c

Monad m => Bind (QueryT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.Query

Methods

(>>-) :: QueryT m a -> (a -> QueryT m b) -> QueryT m b

join :: QueryT m (QueryT m a) -> QueryT m a

(MonadIO m, MonadMask m) => Query (QueryT m) Source # 
Instance details

Defined in PostgreSQL.Query

Associated Types

type NativeResult (QueryT m) Source #

(MonadMask m, MonadIO m) => RunQuery (QueryT m) (ConnectionPoolT m) Source #

Since: 0.0.0

Instance details

Defined in PostgreSQL.ConnectionPool

type NativeResult (QueryT m) Source # 
Instance details

Defined in PostgreSQL.Query

type NativeResult (QueryT m) = Result

runQueryT :: Connection -> QueryT m a -> m (Either Errors a) Source #

Run an interaction with a PostgreSQL database.

Since: 0.0.0

runQueryTThrow :: MonadThrow m => Connection -> QueryT m a -> m a Source #

Like runQueryT but throw the first Error instead.

Since: 0.0.0