package sihl
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=eac58e5ee9c869aa3b0f0bcee936b01c53bf7fe1febb42edd607268dfb11f4e9
sha512=012b6cf1cf6af0966059761b4916ea8aa590aa8d5809a6f480cb17e23ee10c3b9245062c4f0cf9ad98ab950391c0827c9780999d39fa16a93f7aab4b12f9ab8c
doc/sihl.middleware/Middleware/Db/Make/argument-1-Db/index.html
Parameter Make.Db
include Core.Container.SERVICE
val create_pool :
unit ->
(Caqti_lwt.connection, Caqti_error.t) Caqti_lwt.Pool.t
Create a database connection pool. Raises Data_db_core.Exception
.
val ctx_with_pool : unit -> Core.Ctx.t
Create a database connection pool and attach the pool to an empty context.
val add_pool : Core.Ctx.t -> Core.Ctx.t
Create a database connection pool and attach to provided context.
val query :
Core.Ctx.t ->
(Caqti_lwt.connection -> ('a, Caqti_error.t) Result.t Lwt.t) ->
'a Lwt.t
Run a database query.
The context has to contain a database connection or a database connection pool.
val with_connection : Core.Ctx.t -> (Core.Ctx.t -> 'a Lwt.t) -> 'a Lwt.t
Run a database query on a single connection. Can be used to set session variables that are bound to the same connection.
val atomic : Core.Ctx.t -> (Core.Ctx.t -> 'a Lwt.t) -> 'a Lwt.t
Run a database query atomically on a connection.
The context has to contain a database connection or a database connection pool. Fetch a database connection from context if necessary to make sure, that every query runs on the same connection.
val with_disabled_fk_check : Core.Ctx.t -> (Core.Ctx.t -> 'a Lwt.t) -> 'a Lwt.t
Disables foreign key checks if supported by the database.
Use very carefully, data might become inconsistent!