首頁 > 後端開發 > php教程 > PDO中錯誤處理的方法二-errorInfo()方法

PDO中錯誤處理的方法二-errorInfo()方法

黄舟
發布: 2023-03-07 17:36:02
原創
3959 人瀏覽過

PDO中錯誤處理的方法二-errorInfo()方法

#PDOStatement::errorInfo — 取得跟上一次語句句柄操作相關的擴充錯誤訊息(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)!

在上一篇文章《PDO中錯誤處理的方法一-errorCode()方法》中我們介紹了PDO中錯誤處理的第一種方法,大家可以在上一在文章回顧下,接下來我們為大家介紹PDO中錯誤處理的第二種方法~

errorInfo()方法用來取得操作資料庫句柄時所發生的資訊錯誤,該方法的語法格式如下:

array PDOStatement::errorInfo(void)
登入後複製

PDOStatement::errorInfo() 傳回一個關於上一次語句句柄執行操作的錯誤訊息的陣列。此陣列包含下列欄位:

元素訊息
0SQLSTATE 錯誤碼(一個由5個字母或數字組成的在ANSI SQL 標準中定義的識別碼)。
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中錯誤處理的方法二-errorInfo()方法

#關於PDO中錯誤處理的兩種方法到這裡我們就全部介紹完了,相信小夥伴們對PDO中錯誤處理有了一定了解,還沒明白的小伙伴可以再回顧一下,下一篇文章我們繼續給大家介紹PDO的事務處理,具體請閱讀《

PDO中的事務處理具體介紹》!

以上是PDO中錯誤處理的方法二-errorInfo()方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板