odbx_error(3)

NAME
odbx_error - Returns a human readable error message

SYNOPSIS
\FC#include <opendbx/api.h>\F[]

\FCchar* odbx_error\F[]
\FC(odbx_t* handle, int error);\F[]

DESCRIPTION
\FCodbx_error\F[]() returns an error string corresponding to the supplied error code or the error string generated by the native database library. Error strings originating from the backend modules or the native database client libraries are cleared as soon as the next odbx_*() function is called. All error strings are statically allocated and must not be changed or freed. If the OpenDBX library is compiled with native language support and the user environment variables are set accordingly to a supported language, strings which are part of the OpenDBX library are translated before being returned. This may also be the case for strings returned by the native database libraries but depends on their support.

The first parameter \FChandle\F[] is the connection object created and returned by \FCodbx_init\F[]() which becomes invalid as soon as it was supplied to \FCodbx_finish\F[](). Anyhow, it isn't necessary to supply a valid handle for errors which use error codes not equal to -\FCODBX_ERR_BACKEND\F[] because they are returned directly from a static error message array. Therefore, it's possible to use \FCodbx_error\F[]() even if \FCodbx_init\F[]() wasn't successful. If -\FCODBX_ERR_BACKEND\F[] is supplied in this case nevertheless, the return error string will be the same as for an invalid handle.

Almost all OpenDBX library functions return an \FCerror\F[] code if one of the operations couldn't be completed successfully. The codes returned use values less than zero to indicate different kind of errors and these values can be directly passed to \FCodbx_error\F[]() to obtain the corresponding zero-terminated error string.

RETURN VALUE
\FCodbx_error\F[]() returns a zero-terminated string suitable for being displayed to the user of the application.

ERRORS
If an backend error occurred and \FChandle\F[] is NULL or the supplied connection object is invalid, \FCodbx_error\F[]() returns the localized string for -\FCODBX_ERR_PARAM\F[].

SEE ALSO
\FCodbx_error_type\F[](), \FCodbx_init\F[]()