PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

PDO::errorInfo - データベースハンドラにおける直近の操作に関連する拡張エラー情報を取得する | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

PDO::errorInfo

(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.1.0)

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

説明

public array PDO::errorInfo ( void )

返り値

PDO::errorInfo() は、 このデータベースハンドラによって実行された直近の操作に関するエラー情報を 配列として返します。この配列は次のフィールドを含みます。
要素 情報
0 SQLSTATE エラーコード (これは、ANSI SQL 標準で定義された英数 5 文字の ID)
1 ドライバ固有のエラーコード
2 ドライバ固有のエラーメッセージ

注意:

SQLSTATE エラーコードが設定されていない場合やドライバ固有のエラーがない場合は、 要素 0 に続く要素は NULL となります。

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

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

<?php
/* エラーを発生させる -- 無効な SQL シンタックス */
$stmt $dbh->prepare('bogus sql');
if (!
$stmt) {
    echo 
"\nPDO::errorInfo():\n";
    
print_r($dbh->errorInfo());
}
?>

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

PDO::errorInfo():
Array
(
    [0] => HY000
    [1] => 1
    [2] => near "bogus": syntax error
)

参考

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


忘却曲線を使ってこの知識を確実に記憶に残す

フォーラムで「PDO::errorInfo - データベースハンドラにおける直近の操作に関連する拡張エラー情報を取得する」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | PDO::errorInfo - データベースハンドラにおける直近の操作に関連する拡張エラー情報を取得する」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: