PDO を使用して SQLite3 データベースにアクセスする PHP スクリプトで、準備済みステートメントを使用しようとしています。
このクエリの通常のバージョンは期待どおりに機能します。
$q1 = "SELECT COUNT(*) FROM fruits WHERE name='apple'";
echo $db->query($q1)->fetchColumn();
ただし、準備済みステートメントのバージョンでは何も出力されません。
$q2 = "SELECT COUNT(*) FROM fruits WHERE name='?'";
$s = $db->prepare($q2);
$s->execute("apple");
echo $s->fetchColumn();
私は何を間違っていますか?PHP 5.2 と PHP 5.3 の両方で試しましたが、結果は同じでした。