ホームページ  >  記事  >  バックエンド開発  >  PDO でのエラー処理の方法 2 - errorInfo() メソッド

PDO でのエラー処理の方法 2 - errorInfo() メソッド

黄舟
黄舟オリジナル
2017-04-28 17:45:373857ブラウズ

PDO でのエラー処理のメソッド 2 - errorInfo() メソッド

PDOStatement::errorInfo — 最後のステートメント ハンドル操作に関連する拡張エラー情報を取得します (PHP 5 >= 5.1.0、PECL pdo > = 0.1.0)!

前の記事「PDO のエラー処理方法 1 - errorCode() メソッド」では、PDO の最初のエラー処理方法を紹介しました。次に、2 番目のエラー処理方法を紹介します。 PDO~

errorInfo() メソッドは、データベース ハンドルの操作時に発生するエラー情報を取得するために使用されます。このメソッドの構文形式は次のとおりです。

array PDOStatement::errorInfo(void)

PDOStatement::errorInfo() は、エラー メッセージの配列を返します。ステートメントハンドルによって実行された最後の操作。配列には次のフィールドが含まれます:

要素 情報
0 SQLSTATE エラー コード (ANSI SQL 標準で定義されている 5 文字または数値の識別子)。
1 特定のドライバーのエラー コード。
2 特定のドライバーのエラー情報。

PDO の query() メソッドを通じてデータ クエリ操作を完了し、foreach ステートメントを通じてデータのループ出力を完了します。SQL ステートメントを定義するときに間違ったデータ テーブルを使用し、errorInfo を通じてエラーを返します。 () メソッドの詳細な実装手順は次のとおりです:

php ファイルを作成し、最初に PDO を介して MySQL データベースに接続し、次に query() メソッドを介してクエリ ステートメントを実行し、次に errorInfo を介してエラー情報を取得します。 () メソッドを実行し、最後に foreach ステートメントによるデータのループ出力を完了します。具体的な実装コードは次のとおりです:

<?php
header("Content-Type:text/html; charset=utf-8");    //设置页面的编码格式
$dbms = "mysql";                                  // 数据库的类型
$dbName ="php_cn";                                //使用的数据库名称
$user = "root";                                   //使用的数据库用户名
$pwd = "root";                                    //使用的数据库密码
$host = "localhost";                              //使用的主机名称
$dsn  = "$dbms:host=$host;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="select * from user_12";//需要执行的sql语句
$res=$pdo->query($query);//准备查询语句
print_r($pdo->errorInfo());
?>
<table border="1" width="500">
    <tr>
        <td height="22" align="center" valign="middle">id</td>
        <td height="22" align="center" valign="middle">用户名</td>
        <td height="22" align="center" valign="middle">密码</td>
    </tr>
    <?php
    foreach ($res as $items){
        ?>
        <tr>
            <td height="22" align="center" valign="middle"><?php echo $items["id"];?></td>
            <td height="22" align="center" valign="middle"><?php echo $items["username"];?></td>
            <td height="22" align="center" valign="middle"><?php echo $items["password"];?></td>
        </tr>
        <?php
    }
    }catch(PDOException $e){
        die("Error!:".$e->getMessage().&#39;<br>&#39;);
    }
    ?>
</table>

注:

上記のコードでは、SELECT クエリ ステートメントを定義するときに、 、意図的に間違ったデータ テーブル名 user_12 を使用しました (正しいデータ テーブル名は :user)。これはテスト用に書かれたものです。

出力結果は以下の図に示されています:

PDO でのエラー処理の方法 2 - errorInfo() メソッド

ここで PDO でのエラー処理の 2 つの方法をすべて紹介しました。私の友人は PDO でのエラー処理をある程度理解していると思います。次回も引き続き PDO のトランザクション処理について紹介していきますので、詳しくは「PDO のトランザクション処理の詳しい紹介」をご覧ください。

以上がPDO でのエラー処理の方法 2 - errorInfo() メソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。