[PHP-users 30967] PEAR DB Error: mismatchについて
木内智史
samurai @ don-quijote.jp
2006年 12月 12日 (火) 11:21:49 JST
お世話になっております。木内と申します。
現在Pear_DBを使用しているのですが、prepare後のexecuteでエラーが発生して
しまいます。
Pear_DBのバグだと思うのですが、どうなんでしょうか?
ソースを覗いた感じバグなのですが、これまでこのバグに対応したことがある方
がおられましたら、どのように対応したのかご教授いただけないでしょうか?
現象としましては、
$query = "SELECT * FROM foo WHERE != ?";
$params = array( "bar" );
$stmt = $db->prepare($query);
$result = $db->execute($stmt, $params);
上記のようなコードで、resultにエラーがレイズされ、エラー内容が、
「DB_Error: mismatch」となってしまうのです。
ちなみに、
$query = "SELECT * FROM foo WHERE = ?";
だとうまくいきます。
これは、「!」の文字列がprepare系の動作で重要な文字列となっているために起
こるエラーであることは分かっているのですが…対処法がさっぱりです…。
正当な対処法ってあるんでしょうか?
それでは、よろしくお願いいたします。
--
木内智史 <samurai @ don-quijote.jp>
PHP-users メーリングリストの案内