ADOdb

Database Abstraction Layer for PHP

User Tools

Site Tools


v5:database:for_removal

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
v5:database:for_removal [2020/01/08 02:53] mnewnhamv5:database:for_removal [2020/01/09 04:03] (current) – [Functions in adodb-lib.inc.php] mnewnham
Line 8: Line 8:
 | [[v5:database:Informix]]                          | informix, informix_72             | Database End-Of-Life / No PHP 7 Drivers              | | [[v5:database:Informix]]                          | informix, informix_72             | Database End-Of-Life / No PHP 7 Drivers              |
 | [[v5:database:mysql#mysqlt|mysqlt]]               | mysqlt, mysqlpo                   | Superseded by mysqli                                 | | [[v5:database:mysql#mysqlt|mysqlt]]               | mysqlt, mysqlpo                   | Superseded by mysqli                                 |
-| [v5:database:microsoft_sql_server#mssql]]         | mssql, mssql_n, mssqlpo           | Driver End Of Life / No PHP7 drivers                 |+[[v5:database:microsoft_sql_server#mssql]]        | mssql, mssql_n, mssqlpo           | Driver End Of Life / No PHP7 drivers                 |
 | [[v5:database:Netezza]]                           | netezza                           | Database End-Of-Life 2019                            | | [[v5:database:Netezza]]                           | netezza                           | Database End-Of-Life 2019                            |
 | [[v5:database:ODBTP]]                             | odbtp, odbtp_unicode              | Obsolete                                             | | [[v5:database:ODBTP]]                             | odbtp, odbtp_unicode              | Obsolete                                             |
Line 22: Line 22:
 Occasionally renewed interest in a database may result in a driver being reactivated Occasionally renewed interest in a database may result in a driver being reactivated
 ===== Partial Removal ===== ===== Partial Removal =====
-^ Driver  ^ Children  ^ Reason  | +^ Driver                                        ^ Children                                     ^ Reason                                                                         ^ 
- [[v5:database:ibm_db2|IBM_DB2]] |db2ora, db2oci | Feature handled in rewritten main driver. Use param() for parametisation         |+              [[v5:database:ibm_db2|IBM_DB2]] | db2ora, db2oci                               | Feature handled in rewritten main driver. Use param() for parametisation       | 
 +| [[v5:database:oracle#oci805]]                 | oci805                                       | Written specifically for now obsolete version of oracle                        | 
 +| [[v5:database:oracle#oci8po]]                 | oci8po                                       | Should be able to roll the minor differences in this driver into the main one  | 
 +| [[v5:database:oracle#oracle]]                 | oracle                                       | Obsolete database version                                                      | 
 +| [[v5:database:odbc#mssql2012ODBC mssql2012]]  | odbc_mssql2012                               | Make the extended feature of this driver the default in the parent             | 
 +| [[v5:database:sqlite]]                        | sqlite3                                      | merge current version back to **sqlite**                                       | 
 +| [[v5:database:postgresql]]                    | postgres64, postgres7, postgres8, postgres9  | Merge all versions back to **postgres**                                        | 
 +| [[v5:database:pdo#mssql|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. 
 +===== ociquercus ===== 
 +This seems to have a lot of complicated cursor stuff in it. I think John was a bit of an oracle hacker. would be a shame to lose it but not quite sure what to do with it 
 +===== Directory Structure ===== 
 +I think we should break a lot of stuff away from the main directory, perhaps it could match a namespace or something? 
 +<code php> 
 +\adodb 
 +\adodb\adodb 
 +\adodb\adodb\drivers 
 +\adodb\adodb\datadict 
 +\adodb\adodb\perf 
 +\adodb\adodb\xmlschema 
 +\adodb\adodb\memcache 
 +\adodb\adodb\errors 
 +\adodb\adodb\lang 
 + 
 +\adodb\session 
 + 
 +\adodb\activerecord 
 + 
 +\adodb\time 
 + 
 +\adodb\other - everything else in subdirectories 
 +</code> 
 +This would empty the main directory 
 + 
 +===== Functions in adodb-lib.inc.php ===== 
 +There are a lot of functions in this file, for eaxample ''_adodb_column_sql()''. I've never understood why these are functions and not part of the class. I think we should make them class functions, and if necessary, create some kind of helper functions that calls them. so: 
 + 
 +<code php> 
 +function _adodb_column_sql(&$zthis .. 
 + 
 +becomes ADOconnection::adodbColumnSql 
 + 
 +</code> 
 + 
 + 
v5/database/for_removal.1578448438.txt.gz · Last modified: 2020/01/08 02:53 by mnewnham