This is an old revision of the document!
Table of Contents
List of Drivers To Be Removed / Merged
Full Removal
Driver | Driver / Children | Reason |
---|---|---|
ADO | ado, ado_access, ado_mssql, ado5 | Obsolete |
Frontbase | fbsql | No PHP drivers since V4 |
IBM Informix | informix, informix_72 | Database End-Of-Life / No PHP 7 Drivers |
mysqlt | mysqlt, mysqlpo | Superseded by mysqli |
mssql | mssql, mssql_n, mssqlpo | Driver End Of Life / No PHP7 drivers |
Netezza | netezza | Database End-Of-Life 2019 |
ODBTP | odbtp, odbtp_unicode | Obsolete |
Plain Text | text | Incompatible with later versions of PHP |
Proxy | proxy | Deprecated for security reasons, as of ADOdb 5.21.0 |
SAP ADS | ads | Database End-Of-Life / No PHP 7 Drivers |
SAP ASE | sybase, sybase_ase | Database End-Of-Life / No PHP 7 Drivers |
SAP MaxDB | sapdb | Database End-Of-Life / No PHP 7 Drivers |
SAP SQL Anywhere | sqlanywhere | Dormant / No Active Users |
Visual FoxPro | vfp | Obsolete |
Occasionally renewed interest in a database may result in a driver being reactivated
Partial Removal
Driver | Children | Reason |
---|---|---|
IBM_DB2 | db2ora, db2oci | Feature handled in rewritten main driver. Use param() for parametisation |
oci805 | oci805 | Written specifically for now obsolete version of oracle |
oci8po | oci8po | Should be able to roll the minor differences in this driver into the main one |
oracle | oracle | Obsolete database version |
mssql2012ODBC mssql2012 | odbc_mssql2012 | Make the extended feature of this driver the default in the parent |
SQLite Database | sqlite3 | merge current version back to sqlite |
PostgreSQL | postgres64, postgres7, postgres8, postgres9 | Merge all versions back to postgres |
PDO mssql | mssql | Obsolete driver |
Remaining
Old Name | New Name | Children |
---|---|---|
access | access | |
db2 | db2 | |
firebird | firebird | |
ldap | ldap | |
mssqlnative | sqlserver | |
mysqli | mysql | |
oci8 | oracle | |
odbc | odbc | db2, mssql, oracle |
pdo | pdo | dblib, firebird, mysql, oci8→oracle. pgsql, sqlite, slsrv |
postgres9 | postgres | |
sqlite3 | sqlite |
The thing about the PDO driver
Take, for example, pdo_mysql. This driver is really just the mysql driver. It doesn't really have anything to do with PDO. This is the same for all the PDO drivers.
If you were going to make the drivers loadable classes, it would make no sense to have these as extensions of PDO, they should be an extension of the native driver so that they all have access to the already written methods in the native driver.
How to link them to the base driver I have no idea.
LDAP Driver
Isn't really the same thing as all the others. It's useful, but doesnt really fit in with the others. Maybe we should break it off to its own directory or something.