PDBwrapper

From OpenBrainstem

Jump to: navigation, search

The pDBwrapper project provides a set of lightweight, high-performance, database abstraction classes for PHP5 developers to use. Each class provides support for a different database engine, i.e. MySQL, DB2, etc.

Contents

[edit] Overview

All of the classes support the same API, so once an application is written to use one of them, you can swap in any of the other pDBwrapper classes and your application will function with the new database engine; all without rewriting a single line of your applications code.

The pDBwrapper classes are designed to be very easy to use, highly flexible (i.e. allowing you to tweak the operations for a variety of supported features) and high performance. For example, you can create queries to feed to the classes in more than one way; choose the methodology that best fits your style and experience. Then, when it comes time to send your query to the DB engine, it will be reformatted, if necessary, to work in the most optimal way possible for the particular engine you are using. Even if that engine does not directly support the format of query you wrote, the pDBwrapper classes will convert it for you.

Of course, you could also learn how to rewrite your query in the way your new database engine uses and improve performance even further. However, with the pDBwrapper classes, this is optional.

[edit] Supported Database Engines

Currently, only the MySQL support is complete. The development of the classes to support the other engines listed here is well under way.

[edit] MySQL

Works with any version of MySQL server that is supported by PHP5 (which pretty much means all of them).

[edit] PostgreSQL

Under development. We originally planned on supporting PostgreSQL versions 7.4.x and 8.0.x and later. We have dropped 7.4.x support and will likely not support 8.0.x either. Current plans are to support 8.1.x, unless 8.2 comes out before we commit the PostgreSQL work.

[edit] Microsoft SQL Server

Under development. Code almost ready for first testing.

[edit] IBM DB2

I've barely begun development of this one.

[edit] Oracle

Specific support for Oracle 8i and 9i will not be included. Support for 10g and 11g will be developed. So far, I have written much of the needed code, but not to a testable point.

[edit] SQLite

Development of the support for SQLite has not yet begun. We expect to start writing this one RSN.

[edit] Other Databases

The design of the pDBwrapper classes is very clean. This makes them incredibly easy to maintain, extend, audit and understand. It also means that it is very easy to add new classes to the set to support other database engines.

If you use a database engine that we are not currently supporting, and you would like to use pDBwrapper with your engine of choice, let us know. We would be happy to write the support.

[edit] Download

The pDBwrapper classes are provided in source code form.

pDBWrapper Version Supported Databases Download
0.2 MySQL pDBwrapper-0.2.tar.gz

[edit] Contact Information

[edit] Mailing Lists

[ NOTE: Our mailing lists will be set up soon. ]

[edit] Announce List

This is a low volume, read-only list for announcements related to the pDBwrapper database extraction classes project. Announcements are made for new releases and security alerts.

List members can not post to this list.

[edit] General Discussion/User List

This list is for users of the pDBwrapper database abstraction classes.

List members can post to: pDBwrapper-user@OpenBrainstem.net

[edit] Developer List

This list is for developers involved in writing and maintaining the pDBwrapper classes. This list is not about developers who use pDBwrapper for other projects. Sign up on this list if you want to help develop and maintain any of the pDBwrapper classes, or if you want to discuss bugs you have submitted to the project, or if you want to just keep up with new features that are under development.

List members can post to: pDBwrapper-devel@OpenBrainstem.net

[edit] Testing List

This list is for those involved with testing new versions of, and features being created for, the pDBwrapper database abstraction classes.

List members can post to: pDBwrapper-test@OpenBrainstem.net

[edit] Feature Requests & Bug Reporting

[ NOTE: The OpenBrainstem Tracker is not currently online. ]

Feature requests (known as a "Request for Enhancement", or RFE) can be posted in the OpenBrainstem Tracker. Select RFE for the severity when adding your request to the pDBwrapper project.

Bug reports can be filed under the pDBwrapper project.

Personal tools