首页> 基础笔记 >PHP基础学习 >PDO PDO

PDO的错误处理模式

作者:小萝卜 2019-09-10 浏览 1157

简介PDO的错误处理模式,PDO::ATTR_ERRMODE=>错误处理模式:(3),PDO::ERRMODE_SILENT:不报错误(忽略)(0),PDO::ERRMODE_WARNING:以警告的方式报错(1),PDO::ERRMODE_EXCEPTION:以异常的方式报错(推荐使用)

PDO的错误处理模式

PDO::ATTR_ERRMODE=>错误处理模式:(3)

PDO::ERRMODE_SILENT:不报错误(忽略)(0)

PDO::ERRMODE_WARNING:以警告的方式报错(1)

PDO::ERRMODE_EXCEPTION:以异常的方式报错(推荐使用)(2)

设置方式:2种

在构造时初始化错误模式

通过pdo对象的setAttribute()方法设置。

$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

面向过程

$con->errorCode():SQL语句错误代码

$con->errorInfo():错误信息

面向对象

捕获PDOException异常对象

实例:
 

<?php
//使用PDO对象操作数据库的方法:

//导入配置文件
require("config.php");

try{
    //创建PDO对象,实现数据库的连接
    $pdo = new PDO(DSN,USER,PASS);
    //设置pdo属性信息(PDO的报错模式)
    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
    die("数据库连接失败!原因:".$e->getMessage());
}

//执行单条数据信息查询
$stmt = $pdo->query("select * from stu where id=1");
$ob = $stmt->fetch(PDO::FETCH_ASSOC);
var_dump($ob);

//执行一条数据删除
echo "删除一条数据".$pdo->exec("delete from stu where id =4");


//数值错误模式为关闭输出
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_SILENT);

$pdo->exec("update stu2 set age=30 where id=6");
//通过PDO的错误号来判断sql语句执行是否有错误,并输出信息
if($pdo->errorCode()>0){
   //print_r($pdo->errorinfo());
   echo "刚刚执行的sql有错误!原因:".$pdo->errorinfo()[2];
}

 

很赞哦! (0)

文章评论

    高端网站建设