(c) 2000-2013 John Lim (jlim@natsoft.com)
(c) 2014 Damien Regad, Mark Newnham and the ADOdb community
Released under both BSD 3-Clause
and GNU Lesser GPL library 2.1
licenses.
This means you can use it in proprietary products;
see License for details.
Home page: http://adodb.org/
WARNING: known issue with Associative Fetch Mode in ADOdb v5.19 -- PLEASE UPGRADE TO v5.20 !
When fetching data in Associative mode (i.e. when$ADODB_FETCH_MODE
is set to ADODB_FETCH_ASSOC), recordsets do not return any data (empty strings) when using some database drivers. The problem has been reported on MSSQL, Interbase and Foxpro, but possibly affects other drivers as well; all drivers derived from the above are also impacted. For further details, please refer to Issue #20.
PHP's database access functions are not standardized. This creates a need for a database class library to hide the differences between the different databases (encapsulate the differences) so we can easily switch databases.
The library currently supports MySQL, Interbase, Sybase, PostgreSQL, Oracle, Microsoft SQL server, Foxpro ODBC, Access ODBC, Informix, DB2, Sybase SQL Anywhere, generic ODBC and Microsoft's ADO.
We hope more people will contribute drivers to support other databases.
Unpack all the files into a directory accessible by your web server.
To test, try modifying some of the tutorial examples. Make sure you customize the connection settings correctly.
You can debug using:
<?php
include('adodb/adodb.inc.php');
$db = ADONewConnection($driver); # eg. 'mysql' or 'oci8'
$db->debug = true;
$db->Connect($server, $user, $password, $database);
$rs = $db->Execute('select * from some_small_table');
print "<pre>";
print_r($rs->GetRows());
print "</pre>";
Refer to the ADOdb website for library documentation and examples. The documentation can also be downloaded for offline viewing.
- Main documentation: Query, update and insert records using a portable API.
- Data dictionary describes how to create database tables and indexes in a portable manner.
- Database performance monitoring allows you to perform health checks, tune and monitor your database.
- Database-backed sessions.
There is also a tutorial that contrasts ADOdb code with PHP native MySQL code.
adodb.inc.php
is the library's main file. You only need to include this file.adodb-*.inc.php
are the database specific driver code.adodb-session.php
is the PHP4 session handling code.test.php
contains a list of test commands to exercise the class library.testdatabases.inc.php
contains the list of databases to apply the tests on.Benchmark.php
is a simple benchmark to test the throughput of a SELECT statement for databases described in testdatabases.inc.php. The benchmark tables are created in test.php.
To discuss with the ADOdb development team and users, connect to our Gitter chatroom using your Github credentials.
Please report bugs, issues and feature requests on Github:
https://github.com/ADOdb/ADOdb/issues
You may also find legacy issues in
- the old ADOdb forums on phplens.com
- the SourceForge tickets section
However, please note that they are not actively monitored and should only be used as reference.