pearのDBとMDB2の違い
PEARのDBがメンテナンスモードになったことにより、データベースを扱う次のデフォルトがMDB2になった。しかし使い方が若干違うので、主要な部分だけとりあえずメモ。1行目がDBで2行目がMDB2。
○読み込み
require(‘DB.php’);
require(‘MDB2.php’);
○接続(これはconnectでも動いているっぽい)
$db=& DB::connect($dsn);
$mdb2=& MDB2::factory($dns);
○データをフェッチするモードの設定
$db->setFetchMode(DB_FETCHMODE_ASSOC);
$mdb2->setFetchMode(MDB2_FETCHMODE_ASSOC);
○全行取得
$all = $db->getAll($sql);
$all = $mdb2->queryAll($sql);
○1つだけ取得
$one = $db->getOne($sql);
$one = $mdb2->queryOne($sql);
○1行取得
$row = $db->getRow($sql);
$row = $mdb2->queryRow($sql);
○連番取得(DBではカラムid、MDB2ではカラムsequenceを使う)
$db->nextId($table);
$mdb2->nextId($table);
○文字列のクオート
‘SELECT name FROM people WHERE id = ‘.$db->quoteSmart(1)
‘SELECT name FROM people WHERE id = ‘.$db->quote(1, ‘integer’)
参考:DB-2-MDB2
2007/05/03 at 2:21 PM
DB.phpを使うためにインストール
前回、まったく関係ないこと(仕事の愚痴)を書いてしまったので、ここでっ本当に、インストールのメモです。以下のコマンドを実行はじめに、"pear"を単独で実行してるのは、pear自体がきちんとインストールできているのか自信がなかったからです。
2007/07/03 at 6:00 PM
PEAR の DB から MDB2 への移行メモ
やっとMDB2 へ移行したので、その時のメモ。DBからMDB2への移行は結構いろいろなサイトで書かれていますね。PHPのテクメモ | pearのDBとMDB2の違いDB-2-MDB2これらを参考にさせていただいた…