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

# PDO::errorInfo

(no version information, might be only in CVS)

PDO::errorInfo -- Fetch extended error information associated with the last operation on the database handle

## Description

array PDO::errorInfo ( void )

警告
この関数は、 実験的なステータスにあります。これは、この関数の 動作、関数名、ここで書かれていること全てがPHPの将来のバージョンで予告 なく変更される可能性があることを意味します。注意を喚起するとともに自分 のリスクでこの関数を使用して下さい。

PDO::errorInfo() returns an array of error information about the last operation performed by this database handle. The array consists of the following fields:

Element | Information
--- | ---
0 | Generic PDO error code corresponding to one of the PDO_ERR_* constants.
1 | Driver-specific error code.
2 | Driver-specific error message.

PDO::errorInfo() only retrieves error information for operations performed directly on the database handle. If you create a PDOStatement object through PDO::prepare() or PDO::query() and invoke an error on the statement handle, PDO::errorInfo() will insert an error code of PDO_ERR_NONE into the first element of the returned array. You must call PDOStatement::errorInfo() to return the error information for an operation performed on a particular statement handle.

例 1. Displaying errorInfo() fields for a PDO_ODBC connection to a DB2 database

`<?php /* Provoke an error -- the BONES table does not exist */ $dbh->exec("INSERT INTO bones(skull) VALUES ('reagan')"); $arr = $dbh->errorInfo(); if ($arr[0] == PDO_ERR_NOT_FOUND) { echo "Error: a requested database object does not exist.\n"; printf("Driver-specific error code: %d\n", $arr[1]); printf("Driver-specific message: [%s]\n", $arr[2]); } ?>`

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

    Error: a requested database object does not exist.
    Driver-specific error code: -204
    Driver-specific message: [SQLExecute: -204 [IBM][CLI Driver][DB2/NT]
    SQL0204N  "DB2INST1.BONES" is an undefined name.  SQLSTATE=42704
     [SQL State 42S02]  (..\pecl\pdo_odbc\odbc_stmt.c:80)]

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