php_pdo 异常处理

原创 2016年05月31日 16:48:26

pdo异常处理设置:

设置PDO::ATTR_ERRMODE ,有以下三个值:

PDO::ERRMODE_SILENT: 默认模式,不主动报错,需要主动以 $pdo->errorInfo()的形式获取错误信息。

PDO::ERRMODE_WARNING: 引发 E_WARNING 错误,主动报错

PDO::ERRMODE_EXCEPTION: 主动抛出 exceptions 异常,需要以try{}cath(){}输出错误信息。

实例:
方式一:

<?php
//默认是不提示的 需要用 errorCode() errorInfo();
try{
    $pdo = new PDO("mysql:host=localhost;dbname=jikexueyuan","root","");
    //下面这句是默认设置,有无均可
    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_SILENT);
}catch(PDOException $e){
    die("数据库连接失败".$e->getMessage());
}
$sql = "insert into stuu values(null,'jike','w',55)";
$res = $pdo->exec($sql);
if($res){
    echo "OK";
}else{
    echo $pdo->errorCode();
    print_r($pdo->errorInfo());
} 

方式二:

<?php
try{
    $pdo = new PDO("mysql:host=localhost;dbname=jikexueyuan","root","");
    //主动以警告的形式报错
    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
}catch(PDOException $e){
    die("数据库连接失败".$e->getMessage());
}
$sql = "insert into stuu values(null,'jike','w',55)";
//若有错误直接在浏览器页面中显示错误信息
$res = $pdo->exec($sql);

方式三:

<?php
try{
    $pdo = new PDO("mysql:host=localhost;dbname=jikexueyuan","root","");
    //主动抛出异常
    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION );
}catch(PDOException $e){
    die("数据库连接失败".$e->getMessage());
}
$sql = "insert into stuu values(null,'jike','w',55)";
//用try{}catch(){}抓取异常
try{
    $res = $pdo->exec($sql);
}catch(PDOException $e){
    echo $e->getMessage();
}

相关文章推荐

php 中PDO异常PDOException处理

PDO提供了三种不同的错误处理模式,不仅可以满足不同风格的编程,也可以调整扩展处理错误的方式: 1.PDO::ERRMODE_SLIENT(默认模式)   PDO 将只简单地设置错误码,可使用...

pdo错误处理模式与事务处理

  • Enya_Wu
  • Enya_Wu
  • 2016年11月29日 09:21
  • 353

ubuntu上编译安装apache步骤、遇到的一些问题解法

创建apache安装后的目录,/home/work/oem/apache 1、编译安装apr cd  /home/work/tools tar –xzvf apr-1.4.8.tar.gz c...

设置PDO的错误处理模式

PDO默认的错误处理方式是返回一个数组格式的错误代码。如果想要判断SQL有没有出错时,就需要写一组代码来检测这个返回的数组。觉得这样有些麻烦。还好PDO还提供了另外两种处理方式,只要根据需要设置一下就...
  • phpboke
  • phpboke
  • 2016年03月04日 15:12
  • 1633

PHP培训第七讲__异常处理

  • 2008年10月10日 13:27
  • 11KB
  • 下载

PHP中的异常处理

1.什么是异常?异常和错误有什么区别? 1.异常:程序运行与预期不太一致,与错误是两个不同的概念! 2.抛出和捕获异常 3.多个catch块的时候基类要往后放,否则基类捕获异常后就不会...

轻松学PHP之PHP的错误和异常处理

  • 2015年07月29日 13:45
  • 637KB
  • 下载

php错误与异常处理

以下内容来自《细说php》 //
  • LUAOHAN
  • LUAOHAN
  • 2014年05月19日 17:35
  • 548

PHP的错误和异常处理

PHP的错误和异常处理 - n哖苡逅 - 博客园  http://www.cnblogs.com/laojie4321/p/4187620.html PHP的错误和异常处理 ...
  • guyue35
  • guyue35
  • 2016年11月05日 18:44
  • 245
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:php_pdo 异常处理
举报原因:
原因补充:

(最多只允许输入30个字)