Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.77">

2.1. Driver Infrastructure Functions

2.1.1. dbd_register_driver

void dbd_register_driver(const dbi_info_t **_driver_info, const char ***_custom_functions, const char ***_reserved_words)

This is the first function called after the driver module is loaded into memory. It passes back meta-information back to libdbi through the pointers passed as arguments.

Arguments

_driver_info: A pointer used to link to the driver's information struct.

_custom_functions: A pointer used to link to the driver's string array of custom database-specific functions.

_reserved_words: A pointer used to link to the driver's string array of reserved words.

2.1.2. dbd_initialize

int dbd_initialize(dbi_driver_t *driver)

Performs any database-specific server initialization. This is called right after dbd_register_driver().

Arguments

driver: The driver's pointer.

Returns

-1 on error, 0 on success. If -1 is returned, the driver will not be added to the list of available drivers.

2.1.3. dbd_connect

int dbd_connect(dbi_conn_t *conn)

Connects to the database, setting the connection's DB-specific connection handle and current database name. Connection parameters are already filled through the connection's option settings. The standard options that all drivers must recognize (if applicable) are: host, username, password, dbname, and port. Any driver-specific functions must be prefixed with the name of the driver and an underscore, such as "mysql_compression".

Arguments

conn: The target connection instance of the driver.

Returns

-1 on error, 0 on success.

2.1.4. dbd_disconnect

int dbd_disconnect(dbi_conn_t *conn)

Disconnects from the database server.

Arguments

conn: The target connection instance of the driver.

Returns

-1 on error, 0 on success.

2.1.5. dbd_quote_string

int dbd_quote_string(dbi_driver_t *driver, const char *orig, char *dest)

Given a string, wrap quotes around that string and escape any characters that the database server needs escaped.

Arguments

driver: A pointer to the driver itself, which may be useful in weird cases.

orig: The string to quote and escape.

dest: The destination for the new string, which is already allocated as (strlen(orig)*2)+4+1. In the worst case, each character will need to be escaped, with two quote characters at both the beginning and end of the string, plus one for the terminating NULL.

Returns

The length of the new string.

2.1.6. dbd_geterror

int dbd_geterror(dbi_conn_t *conn, int *errno, char **errstr)

Retrieves and stores error information, in numeric and/or string format.

Arguments

conn: The target connection.

errno: The int variable to hold the error number.

errstr: The string to hold the error description.

Returns

0 if there was an error, 1 if errno was filled, 2 if errstr was filled, 3 if both errno and errstr were filled.