PDOの履歴

とにかく動かす

<?php
$pdo = new PDO("mysql:host=localhost;dbname=test",
          'username', 'password');
$stmt = $pdo->prepare("select * from hoge where type = ?");
var_dump($stmt->execute(array(2)));
var_dump($stmt->fetchAll());


prepareもqueryも複数クエリ実行できるだ…。今さら知った。
mysql_query()かなかは無理だった気がする

The pgsql driver is not currently installed

PDOPDO用のエクステンションがある。

php_pgsql.dllじゃなくて、php_pdo_pgsql.dllをロードしなければならない

$pdo = new PDO("mysql:host=localhost; dbname=mindia",
   "username", "password");

SQLSTATE[HY000]

このエラー

SQLSTATE[HY000] General error: 2014 Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.


これでOK

#$this->_connection->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);


そもそも、一回のqueryメソッドで複数クエリを投げた後に、またqueryするとこのエラーがでる。複数クエリを投げた後になか残るだろうか?複数クエリを投げなければよい。(だけどそれも難しい…)