MySQL/iは、 、、またはが成功した場合$db->query('some query')
に結果セットを返すか、、、などの場合に戻ります。SELECT
SHOW
DESCRIBE
EXPLAIN
true
INSERT
UPDATE
DELETE
DROP
そのため、クエリの「タイプ」を簡単に識別できます。
$result = $db->query('some query that we want to identify');
if($result === false){
echo 'Error'; exit;
}
if($result === true){
// query is a successful INSERT, UPDATE, DELETE, DROP, etc.
}else{ // else type of $result will be result set
// query is a successful SELECT, SHOW, DESCRIBE, EXPLAIN
}
PHP ADOdbを使用して上記を行うにはどうすればよいでしょうか?
私は現在使用しています:
$result = $db->Execute('some query');
if($result === false){
echo 'Error'; exit;
}
if(get_class($result) === 'ADORecordSet_empty'){
// query is a successful INSERT, UPDATE, DELETE, DROP, etc?
}else{
// query is a successful SELECT, SHOW, DESCRIBE, EXPLAIN ?
}
これは機能しているように見えますが、壊れやすく、「API に対して機能している」と感じることは間違いありません。それを行うより良い方法はありますか?
それを行う組み込みの ADOdb 関数はありますか?