postgresql-simple-0.2.4.1: Mid-Level PostgreSQL client library

Portabilityportable
Stabilityexperimental
MaintainerLeon P Smith <leon@melding-monads.com>
Safe HaskellNone

Database.PostgreSQL.Simple.Internal

Description

Internal bits. This interface is less stable and can change at any time. In particular this means that while the rest of the postgresql-simple package endeavors to follow the package versioning policy, this module does not. Also, at the moment there are things in here that aren't particularly internal and are exported elsewhere; these will eventually disappear from this module.

Synopsis

Documentation

data Field

A Field represents metadata about a particular field

You don't particularly want to retain these structures for a long period of time, as they will retain the entire query result, not just the field metadata

Constructors

Field 

data SqlType

Constructors

Builtin BuiltinType 
Other Oid 

data QueryError

Exception thrown if query is used to perform an INSERT-like operation, or execute is used to perform a SELECT-like operation.

Constructors

QueryError 

Fields

qeMessage :: String
 
qeQuery :: Query
 

defaultConnectInfo :: ConnectInfo

Default information for setting up a connection.

Defaults are as follows:

  • Server on localhost
  • Port on 5432
  • User postgres
  • No password
  • Database postgres

Use as in the following example:

 connect defaultConnectInfo { connectHost = "db.example.com" }

connect :: ConnectInfo -> IO Connection

Connect with the given username to the given database. Will throw an exception if it cannot connect.

connectPostgreSQL :: ByteString -> IO Connection

Attempt to make a connection based on a libpq connection string. See http://www.postgresql.org/docs/9.1/static/libpq-connect.html for more information.

postgreSQLConnectionString :: ConnectInfo -> ByteString

Turns a ConnectInfo data structure into a libpq connection string.

execute_ :: Connection -> Query -> IO Int64

A version of execute that does not perform query substitution.

withConnection :: Connection -> (Connection -> IO a) -> IO a

Atomically perform an action with the database handle, if there is one.

data Row

Constructors

Row