Looking for beta-testers: Metabase - DBMS independent package for installation and access to databases
| From: | Manuel Lemos | Date: | Mon, 29 Nov 1999 05:06:58 +0000 |
| Subject: | Looking for beta-testers: Metabase - DBMS independent package for installation and access to databases | ||
| Groups: | php.dev php.version4 | ||
| Request: | Send a blank email to php-dev+get-13258@lists.php.net to get a copy of this message | ||
Hello,
Introduction
For the last year I have been working on a complete package to provide
means to install and access databases from PHP in DBMS independent manner.
I named it Metabase.
It may be thought as something similar to what already exist like PHPlib's
database abstraction classes, but it goes much further beyhond it.
This package is made of several classes: the database independent interface
defined by a set of functions, the DBMS specific driver classes, the database
schema parser class and the database schema installation and upgrading
manager class.
The database independent interface communicate with the DBMS specific
drivers to provide access to the database. Database independent data types
and values are mapped to DBMS specific data types and values.
Features that are not directly supported by the DBMS may be emulated by the
each driver. There interface functions to query the driver to determine
what DBMS features are made available directly of by emulation.
A custom XML based format was created to describe database schemas. The
parser class is able to build parse and build the database schema structure
in memory to be used by the manager class. The parser is also able to warn
about table, field, sequence or index names that may be acceptable in some
DBMSs but are not allowed in others.
The manager class is able to take the database schema structure built by
the parser class and install the database using the interface and driver
classes for the specified DBMS.
Furthermore, the manager class is able to take the compare two versions of
a database schema (the currently installed and a new version to upgrade the
schema to) and apply the changes to the schema without disturbing any data that
was inserted after the database schema was installed or upgraded for the
last time.
The manager class is also able to output a DBMS independent dump of a given
database that may be used to install the database again later in the same
server or in a server of a different machine even being of a different
type of DBMS.
All this is pretty much developed and working. Several DBMS specific
drivers were developed (MySQL, PostgreSQL, Mini-SQL, ODBC), others are
being developed as I am writing this (Oracle, Sybase, Informix, IBM DB2,
MS-SQL) and others will be developed later by myself or anybody willing to
contribute.
So, before I release the general public, I am looking for developers that
are willing to test the package, specifically the drivers that are
available. I am particularly interested in testers for drivers that are
being done, but I will accept applications of anybody.
If you are interested to participate in the beta-testing phase, please
contact me ASAP by mailing to mlemos@acm.org. Make sure you mention the
DBMS that you can test under which platforms.
If you just want to use the package without having to contribute with
testing, improving the existing drivers or developing new drivers, please
be patient and hold on, this package will be made available for free some
time soon.
Regards,
Manuel Lemos
Web Programming Components using PHP Classes.
Look at: http://phpclasses.UpperDesign.com/?user=mlemos@acm.org
--
E-mail: mlemos@acm.org
URL: http://www.mlemos.e-na.net/
PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp
--