odbx_unbind(3) Disconnects from the database

SYNOPSIS


#include <opendbx/api.h>

int odbx_unbind (odbx_t* handle);

DESCRIPTION

Releases the binding of the connection to the database and user associated by odbx_bind() to the supplied connection object. This is useful for switching to a different database or binding to the database with different credentials. It is also possible to set new connection related options before rebinding to the database server. If an open transaction exists while this function is executed in the firebird backend, it will be committed to the database and closed. The behavior of the other backends for open transactions may vary.

It's necessary to process all result sets returned by the database server before using this function. Otherwise, it might return an error depending on the native database client library and the backend module. This function must be invoked before calling odbx_finish() to avoid memory leaks and connections left open which may block necessary resources later on.

The handle parameter has to be the connection object created and returned by odbx_init(). It becomes invalid after it was supplied to odbx_finish() and odbx_unbind() will return an error in this case.

RETURN VALUE

odbx_unbind() returns ODBX_ERR_SUCCESS, or an error code whose value is less than zero if one of the operations couldn't be completed successfully. Possible error codes are listed in the error section and they can be feed to odbx_error() and odbx_error_type() to get further details.

ERRORS

-ODBX_ERR_PARAM
handle is NULL or the supplied connection object is invalid