| Portability | portable |
|---|---|
| Stability | experimental |
| Maintainer | Bryan O'Sullivan <[email protected]> |
Database.MySQL.Simple.Result
Description
The Result typeclass, for converting a single value in a row
returned by a SQL query into a more useful Haskell representation.
A Haskell numeric type is considered to be compatible with all
MySQL numeric types that are less accurate than it. For instance,
the Haskell Double type is compatible with the MySQL Long type
because it can represent a Long exactly. On the other hand, since
a Double might lose precision if representing a LongLong, the
two are not considered compatible.
- class Result a where
- convert :: Field -> Maybe ByteString -> a
- data ResultError
- = Incompatible { }
- | UnexpectedNull { }
- | ConversionFailed { }
Documentation
A type that may be converted from a SQL type.
Methods
convert :: Field -> Maybe ByteString -> aSource
Convert a SQL value to a Haskell value.
Throws a ResultError if conversion fails.
Instances
data ResultError Source
Exception thrown if conversion from a SQL value to a Haskell value fails.
Constructors
| Incompatible | The SQL and Haskell types are not compatible. |
Fields
| |
| UnexpectedNull | A SQL |
Fields
| |
| ConversionFailed | The SQL value could not be parsed, or could not be represented as a valid Haskell value, or an unexpected low-level error occurred (e.g. mismatch between metadata and actual data in a row). |
Fields
| |