[PHP-users 17149]Re: [PHP-users17148]PEARexecuteでエラーが発生した場合のSQLの取得方法

ysano ysano @ ysnet.org
2003年 8月 5日 (火) 12:55:38 JST


ysanoです。

>単純化した場合を示します。
>$selsh1Sql = "SELECT * FROM FM_SHOHIN WHERE sh_shocd=?";
>$selsh1Sth = $db->prepare($selsh1Sql);
>$result = $db->execute($selsh1Sth, $shocd);
>
>if(DB::isError($result)) {
>	print mysql_error();
>	exit($result->getMessage());
>}
>
>この場合エラーが発生すると、DB::isError がTRUEになります。
>エラーの内容を知りたいので、executeで組み立てられ、発行されたSQL文を取得し
>たいとします。その場合どのようにすれば、そのSQL文を取得することができるの
>でしょうか?


echo $db->executeEmulateQuery($selsh1Sth, $shocd);

で確認できます。
ただし@access praivateなので
その辺を留意した上で使った方がいいかと思います。

-- 
ysano



PHP-users メーリングリストの案内