airdbc_drv.h File Reference

AirDBC Database Connectivity driver API. More...

Go to the source code of this file.

Data Structures

struct  _AdbConnection
 AirDBC connection internals. More...
struct  _AdbStatement
 AirDBC statement internals. More...
struct  _AdbResultSet
 AirDBC result set internals. More...
struct  _AdbDriver
 AirDBC driver internals. More...


typedef _AdbDriver AdbDriver
 An AirDBC driver.
typedef gboolean(* AdbConnectionFn )(AdbConnection *conn, GError **err)
 Pointer to a driver connection management function.
typedef void(* AdbConnectionFreeFn )(AdbConnection *conn)
 Pointer to a driver connection free function.
typedef gboolean(* AdbStatementFn )(AdbStatement *stmt, GError **err)
 Pointer to a driver statement management function.
typedef void(* AdbStatementFreeFn )(AdbStatement *stmt)
 Pointer to a driver statement free function.
typedef gboolean(* AdbExecuteFn )(AdbStatement *stmt, GError **err)
 Pointer to a driver execute function.
typedef gboolean(* AdbQueryFn )(AdbResultSet *rs, GError **err)
 Pointer to a driver query function.
typedef void(* AdbResultSetFreeFn )(AdbResultSet *rs)
 Pointer to a driver result set free function.
typedef gboolean(* AdbResultSetFn )(AdbResultSet *rs, GError **err)
 Pointer to a driver result set management function.
typedef uint32_t(* AdbResultSetCountFn )(AdbResultSet *rs, GError **err)
 Pointer to a driver result set column count function.
typedef char *(* AdbResultSetNameFn )(AdbResultSet *rs, uint32_t col, GError **err)
 Pointer to a driver result set column name function.
typedef gboolean(* AdbFetchFn )(AdbResultSet *rs, uint32_t col, const char **val, GError **err)
 Pointer to a driver result set value fetch function.


void adb_driver_register (AdbDriver *driver)
 Register a driver with AirDBC.

Detailed Description

AirDBC Database Connectivity driver API.

This file provides the interface used by AirDBC drivers, and by AirDBC itself to communicate with those drivers. You should not have to include this file unless you are writing a driver for an RDBMS client interface not supported by AirDBC.

Typedef Documentation

typedef struct _AdbDriver AdbDriver

An AirDBC driver.

Generally, an AirDBC driver will create an AdbDriver structure describing itself, then register that driver with AirDBC via adb_driver_register().

Function Documentation

void adb_driver_register AdbDriver driver  ) 

Register a driver with AirDBC.

After this call, all adb_conn_create() calls with a URI scheme referencing this driver invoke this driver. Since adb_conn_create() automatically pre-registers builtin drivers, you should only call this for your own drivers. You should provide an API call in your driver to allow applications to register your driver before attempting to connect using it. See the built-in driver source for examples.

driver pointer to driver definition structure to register. AirDBC will not copy this structure, so it is unsafe to free any driver structure storage after registering it. Drivers should be statically allocated for this reason.

© 2005 Carnegie Mellon University
Generated Thu Nov 17 18:48:46 2005 for AirDBC 0.2.0 by Doxygen 1.4.5.