Database Independent Abstraction Layer for C

libdbi Plugin Author's Guide

David A. Parker

Neon Goat Productions

david@neongoat.com

libdbi implements a database-independent abstraction layer in C, similar to the DBI/DBD layer in Perl. Writing one generic set of code, programmers can leverage the power of multiple databases and multiple simultaneous database connections by using this framework.

This guide explains the internal DBD interface for libdbi plugins, and provides a reference for all available plugin helper functions.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in Appendix A.


Table of Contents
1. Introduction
1.1. Description
1.2. libdbi Concepts and Terminology
1.3. Modifications and redistribution of libdbi
1.4. Contact Info
2. Plugin Functions
2.1. Plugin Infrastructure Functions
2.1.1. dbd_register_plugin
2.1.2. dbd_initialize
2.1.3. dbd_connect
2.1.4. dbd_disconnect
2.1.5. dbd_quote_string
2.1.6. dbd_geterror
2.2. Database Query Functions
2.2.1. dbd_fetch_row
2.2.2. dbd_free_query
2.2.3. dbd_goto_row
2.2.4. dbd_list_dbs
2.2.5. dbd_list_tables
2.2.6. dbd_query
2.2.7. dbd_select_db
2.3. DBD Helper Functions
2.3.1. _dbd_result_create
2.3.2. _dbd_result_set_numfields
2.3.3. _dbd_result_add_field
2.3.4. _dbd_row_allocate
2.3.5. _dbd_row_finalize
A. GNU Free Documentation License