NAME¶
PQparamCreate, PQparamCount PQparamReset, PQparamClear - PGparam management
functions.
SYNOPSIS¶
#include <libpqtypes.h>
PGparam *PQparamCreate(const PGconn *
conn);
PGparam *PQparamDup(PGparam *
param);
int PQparamCount(PGparam *
param);
void PQparamReset(PGparam *
param);
void PQparamClear(PGparam *
param);
DESCRIPTION¶
These functions manage the opaque PGparam object.
PQparamCreate() will allocate and initialize a new PGparam object. After
the create call, the PGparam object is ready for use. WARNING: Only types that
have been registered via PQregisterXXX, will be available to the param.
Meaning, the param is not updated with types registered after the param is
created.
PQparamDup() will duplicate a given PGparam, including any internal
values that have already been put. This is useful in cases where you want to
queue qeuries to execute at a later time, like a connection pooler. The
problem is PGparamCreate requires a connection object, which may not be
available when attempting to enqueue a query with its PGparam object. Instead,
a PGparam object can used for the sole purpose of creating duplicates while
there are no available PGconn objects.
PQparamCount() gets the number of parameters in a PGparam object.
PQparamReset() will clear out any previously put parameters, but will not
free any memory. This is useful for application looking to "reuse" a
PGparam object.
PQparamClear() releases all resources being used by a PGparam object, the
object should not be used after a clear.
It is very important to call
PQparamReset() if you plan on reusing a
PGparam object.
RETURN VALUE¶
PQparamCreate() returns a pointer to a PGparam object on success and NULL
if something failed (check
PQgeterror(3) for more information).
PQparamCount() returns the number of parameters in a PGparam object.
PQparamReset() and
PQparamClear() have no return values. If either
function is provided a NULL PGparam pointer, it will silently fail.
EXAMPLES¶
None.
AUTHOR¶
A contribution of eSilo, LLC. for the PostgreSQL Database Management System.
Written by Andrew Chernow and Merlin Moncure.
REPORTING BUGS¶
Report bugs to <libpqtypes@esilo.com>.
COPYRIGHT¶
Copyright (c) 2011 eSilo, LLC. All rights reserved.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO¶
pqt-specs(3),
PQputf(3),
PQgeterror(3),
PQparamExec(3)