Safe Haskell | None |
---|---|
Language | Haskell98 |
Database.Persist.Sqlite
Description
A sqlite backend for persistent.
Note: If you prepend WAL=off
to your connection string, it will disable
the write-ahead log. For more information, see
https://github.com/yesodweb/persistent/issues/363.
- withSqlitePool :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, IsSqlBackend backend) => Text -> Int -> (Pool backend -> m a) -> m a
- withSqliteConn :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, IsSqlBackend backend) => Text -> (backend -> m a) -> m a
- createSqlitePool :: (MonadIO m, MonadLogger m, MonadBaseControl IO m, IsSqlBackend backend) => Text -> Int -> m (Pool backend)
- module Database.Persist.Sql
- data SqliteConf = SqliteConf {
- sqlDatabase :: Text
- sqlPoolSize :: Int
- runSqlite :: (MonadBaseControl IO m, MonadIO m, IsSqlBackend backend) => Text -> ReaderT backend (NoLoggingT (ResourceT m)) a -> m a
- wrapConnection :: IsSqlBackend backend => Connection -> LogFunc -> IO backend
- mockMigration :: Migration -> IO ()
Documentation
Arguments
:: (MonadBaseControl IO m, MonadIO m, MonadLogger m, IsSqlBackend backend) | |
=> Text | |
-> Int | number of connections to open |
-> (Pool backend -> m a) | |
-> m a |
Run the given action with a connection pool.
Like createSqlitePool
, this should not be used with :memory:
.
withSqliteConn :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, IsSqlBackend backend) => Text -> (backend -> m a) -> m a Source #
createSqlitePool :: (MonadIO m, MonadLogger m, MonadBaseControl IO m, IsSqlBackend backend) => Text -> Int -> m (Pool backend) Source #
Create a pool of SQLite connections.
Note that this should not be used with the :memory:
connection string, as
the pool will regularly remove connections, destroying your database.
Instead, use withSqliteConn
.
module Database.Persist.Sql
data SqliteConf Source #
Information required to connect to a sqlite database
Constructors
SqliteConf | |
Fields
|
Instances
Arguments
:: (MonadBaseControl IO m, MonadIO m, IsSqlBackend backend) | |
=> Text | connection string |
-> ReaderT backend (NoLoggingT (ResourceT m)) a | database action |
-> m a |
A convenience helper which creates a new database connection and runs the
given block, handling MonadResource
and MonadLogger
requirements. Note
that all log messages are discarded.
Since 1.1.4
wrapConnection :: IsSqlBackend backend => Connection -> LogFunc -> IO backend Source #
Wrap up a raw Connection
as a Persistent SQL Connection
.
Since 1.1.5
mockMigration :: Migration -> IO () Source #
Mock a migration even when the database is not present.
This function performs the same functionality of printMigration
with the difference that an actualy database isn't needed for it.