DB_Error

DB_Error – DB エラーオブジェクト

Description

処理に失敗した場合、DB の関数のほとんどは DB_Error オブジェクトを返します。ここにはエラーに関する情報が 含まれます。DB_Error は、PEAR_Error と同じ関数を提供します。

DB_Error::getMessage() から返されるメッセージの内容は、 DBMS にかかわらず共通です。

DB_Error::getCode() から返されるエラーコードの内容も、 DBMS にかかわらず共通です。返される数値は、DB.php で定義されている定数 DB_ERROR_* をもとにしています。

DB_Error::getDebugInfo() および DB_Error::getUserInfo() は、 DBMS 固有の完全なエラー情報を返します。

エラーを捕捉し、何が起こったのかを調べる

<?php
require_once 'DB.php';

$db =& DB::connect('pgsql://wronguser:badpw@localhost/thedb');
if (
PEAR::isError($db)) {
    
/*
     * プログラムでほんとうにやりたいのは、こんなことではないかも
     * しれません。これは、たた単にエラーオブジェクトから返される
     * 情報がどのようなものかを説明するためだけのものです。
     */
    
echo '標準のメッセージ: ' $db->getMessage() . "\n";
    echo 
'標準のコード: ' $db->getCode() . "\n";
    echo 
'DBMS 固有のユーザメッセージ: ' $db->getUserInfo() . "\n";
    echo 
'DBMS 固有のデバッグメッセージ: ' $db->getDebugInfo() . "\n";
    exit;
}
?>