PHPのDBアクセス
どうやらこういうことらしい。
(1) DB固有の関数群 msql_xxxx等
PHPで最も基本的かつ原始的な方法。対象DBごとに関数群がある。
プリペアードステートメント、バインド変数の仕組みはない。プログラム中で完全なSQLを組み立てて(sprintf等で)実行する。
基本的なサニタイジングとして、文字列中のシングルクオートなどをエスケープするための関数が用意されている。
例)mysql_real_escape_string
(2) 外部のライブラリ PEAR::DB, PEAR::MDB, PEAR::MDB2等
いままではこれが一般的?
PHPコード面で、DBの違いを吸収してくれる。
多くの場合、プリペアードステートメント、バインド変数が使える。
基本的にはPHPのスクリプトなので、速度面の向上は特に期待できない。