データアクセスストラテジー

Joel on SoftwareJoel on Softwareにこんな記述がありました

Microsoftから出てきたデータアクセスストラテジーの歴史につい考えてみるといい。ODBC、RDO、DAO、ADO、OLEDB、そして今度はADO.NETだ—すべて新しい! これらは技術的必然だったのだろうか? 毎年データアクセスを再発明する必要があるデザイングループの無能さの結果なのだろうか? (たぶんそうだ)。(p.134)

LINQもありますね

どんどん変わっていくのは困りますが(進歩というものでしょうか)、あまり変わらないものがたくさんあるというのもまた困ります。私の作業環境のPHPには、抽象度の低いデータベースアクセス方法がこれだけあります(JDBCだけだと言えるJavaとは偉い違いです)

  • PEAR DB
  • PEAR MDB
  • PEAR MDB2
  • MySQL
  • MySQLi
  • PHP Data Objects (PDO)

「どれを使ったらいいの?」と悩む向きのために、ちょっと調べました。汎用性やパフォーマンスから言って、新しいPHPを使える人はPDOを使うのがいいと思いますが、ある程度古い環境でも動くように、PEAR MDB2で解説しています(MySQLiとPDOでも同じことができることを示すために、サンプルファイルを付けました)

PEAR MDB2でPHPからデータベースを操作する(CodeZine)