prepare ?name ?types conn ~query prepares the statement
query and sets the parameter types to
types. If no
name is given, a random name will be generated. If no types are given, then the PostgreSQL engine infers types.
val with_prepare : ?name:string -> ?types:int32 list -> t -> query:string -> f:( s -> 'a Io.t ) -> 'a Io.t
prepare a query, execute
f, and then
val execute : ?portal:string -> s -> params:Pgx__Pgx_value.v option list -> Pgx__Pgx_value.v option list list Io.t
execute conn ~params t executes the given prepared statement, with the given parameters
params, returning the result rows (if any).
There are several steps involved at the protocol layer: (1) a "portal" is created from the statement, binding the parameters in the statement (Bind). (2) the portal is executed (Execute). (3) we synchronise the connection (Sync).
?portal parameter may be used to name the portal created in step (1) above (otherwise the unnamed portal is used). This is only important if you want to call
describe_portal to find out the result types.
execute_unit ?portal s ?params same as execute, but intended for database calls that have side-affects rather than returning results
describe_statement t describes the statement's parameter types and result types.
close_portal conn ?portal () closes a portal and frees up any resources.