PHP マニュアル
前のページ |  | 次のページ

# PDO::errorInfo

(no version information, might be only in CVS)

PDO::errorInfo -- データベースハンドラにおける直近の操作に関連する拡張エラー情報を取得する

## 説明

array PDO::errorInfo ( void )

## 返り値

PDO::errorInfo() は、 このデータベースハンドラによって実行された直近の操作に関するエラー情報を 配列として返します。この配列は次のフィールドを含みます。

要素 | 情報
--- | ---
0 | SQLSTATE エラーコード (これは、ANSI SQL 標準で定義された英数 5 文字の ID)
1 | ドライバ固有のエラーコード
2 | ドライバ固有のエラーメッセージ

PDO::errorInfo() はデータベースハンドラに 直接行った操作に対するエラーコードのみを取得します。 もし PDO::prepare() や PDO::query() を通して PDOStatement オブジェクトを生成し、 文でエラーが発生した場合、PDO::errorInfo() はそのエラーを反映しません。 特定の文ハンドラに対して実行された操作についてのエラーコードを返すには PDOStatement::errorInfo() をコールしなければなりません。

## 例

例 1. DB2 データベースに対する PDO_ODBC 接続の errorInfo() フィールドを表示する

`<?php /* エラーを発生させる -- BONES テーブルは存在しない */ $err = $dbh->prepare('SELECT skull FROM bones'); $err->execute(); echo "\nPDO::errorInfo():\n"; print_r($err->errorInfo()); ?>`

上の例の出力は以下となります。

    PDO::errorInfo():
    Array
    (
        [0] => 42S02
        [1] => -204
        [2] => [IBM][CLI Driver][DB2/LINUX] SQL0204N  "DANIELS.BONES" is an undefined name.  SQLSTATE=42704
    )

## 参考

PDO::errorCode()
PDOStatement::errorCode()
PDOStatement::errorInfo()

前のページ | ホーム | 次のページ
PDO::errorCode | 上に戻る | PDO::exec