Repodb.Driver_common.Make_full
repodb · API reference
Parameters
module R : RAW_DRIVER_FULLSignature
type connection = R.connectiontype error = R.errorval dialect : Driver.dialectval error_message : error -> stringval connect : string -> (connection, error) resultval close : connection -> unitval with_connection :
string ->
(connection -> ('a, error) result) ->
('a, error) resultval exec :
connection ->
string ->
params:Driver.Value.t array ->
(unit, error) resultval exec_result :
connection ->
string ->
params:Driver.Value.t array ->
(Driver.command_result, error) resultLike exec but reports the affected-row count and any generated id.
val query :
connection ->
string ->
params:Driver.Value.t array ->
(Driver.row list, error) resultval query_one :
connection ->
string ->
params:Driver.Value.t array ->
(Driver.row option, error) resultval query_fold :
connection ->
string ->
params:Driver.Value.t array ->
init:'acc ->
f:('acc -> Driver.row -> 'acc) ->
('acc, error) resultval query_iter :
connection ->
string ->
params:Driver.Value.t array ->
f:(Driver.row -> unit) ->
(unit, error) resultval transaction :
connection ->
(connection -> ('a, error) result) ->
('a, error) resultval begin_transaction : connection -> (unit, error) resultStart a transaction using the backend's native mechanism.
Drivers must not route transaction control through the prepared-statement path: MySQL 8 rejects a prepared BEGIN with error 1295.
val commit : connection -> (unit, error) resultval rollback : connection -> (unit, error) resultval placeholder : int -> stringval returning_supported : boolval upsert_syntax : [ `PostgreSQL | `SQLite | `Standard ]val last_insert_id : connection -> (int64, error) resultval ddl_capabilities : Driver.ddl_capabilities