在PDO中,有两个获取程序中错误信息的方法:errorCode方法和errorInfo方法。
1、errorCode方法
errorCode方法用于获取在操作数据库句柄时所发生的错误代码,这个错误代码被称为SQLSTATE代码,语法为:

int PDOStatement::errorCode(void)

errorCode 方法返回一个错误代码,也就是“SQLSTATE”,SQLSTATE 是由5个数字和字母组成的代码。
在PDO中通过query方法完成数据的查询操作,并且通过foreach 语句完成数据的循环输出。在定义SQL 语句时使用一个错误的数据表,并且通过errorCode方法返回错误代码。

<?php$dbms = 'mysql';$dbname = 'db_study';$host = '127.0.0.1';$user = 'root';$pwd = '123456';$dsn = "$dbms:host=$host;dbname=$dbname";try{$pdo = new PDO($dsn,$user,$pwd);$query = "select * from tb_study";$result = $pdo->query($query);echo "errorCode 为:".$pdo->errorCode();foreach($result as $items){?><tr><td height="20" align="center" valign="middle"><?php echo $items['id']; ?></td><td align="center" valign="middle"><?php echo $items['pdo_type']; ?></td><td align="center" valign="middle"><?php echo $items['database_name']; ?></td><td align="center" valign="middle"><?php echo $items['dates']; ?></td></tr><?php}}catch(PDOException $e){die("Error!:".$e->getMessage()."<br/>");}
?>

2、errorInfo方法
errorInfo方法用于获取操作数据库句柄时所发生的错误信息,语法如下:

array PDOStatement::errorInfo(void)

errorInfo方法的返回值为一个数组,它包含了相关的错误信息。
在PDO中通过query方法完成数据的查询操作,并且通过foreach语句完成数据的循环输出,最后通过errorInfo方法返回错误信息。

<?php$dbms = 'mysql';$dbname = 'db_study';$host = '127.0.0.1';$user = 'root';$pwd = '123456';$dsn = "$dbms:host=$host;dbname=$dbname";try{$pdo = new PDO($dsn,$user,$pwd);$query = "select * from tb_study";$result = $pdo->query($query);print_r($pdo->errorInfo());foreach($result as $items){?><tr><td height="20" align="center" valign="middle"><?php echo $items['id']; ?></td><td align="center" valign="middle"><?php echo $items['pdo_type']; ?></td><td align="center" valign="middle"><?php echo $items['database_name']; ?></td><td align="center" valign="middle"><?php echo $items['dates']; ?></td></tr><?php}}catch(PDOException $e){die("Error!:".$e->getMessage()."<br/>");}
?>

PDO中错误处理:errorCode方法和errorInfo方法相关推荐

  1. PIL库中Image类thumbnail方法和resize方法区别

    from PIL import Image   im=Image.open("C:\\Users\\kethur\\Desktop\\a.jpg") x,y=im.size pri ...

  2. 详细说说ActionScript中function的call()方法和apply()方法

    今天看到function的call和apply这两个方法,上网查了一下,有人说这两个方法是用来动态改变函数指向,并给了一个例子:如下 import customize.my_class;       ...

  3. pandas中DataFrame的apply()方法和applymap()方法,以及python内置函数map()

    我们经常会对DataFrame对象中的某些行或列,或者对DataFrame对象中的所有元素进行某种运算或操作,我们无需利用低效笨拙的循环: import pandas as pd import num ...

  4. java中的正则matches方法和find方法的区别

    Java 正则表达式里find()方法的使用 package com.zte.st.dailybuild.dao;import java.util.regex.Matcher; import java ...

  5. python:PIL库中Image类thumbnail方法和resize方法的比较

    from PIL import Imageim=Image.open("C:\\Users\\kethur\\Desktop\\a.jpg") x,y=im.size print( ...

  6. vector类中为什么没有push_front方法和pop_front方法

    vector是开辟一块空间来作为数组来存放元素(随机迭代器),如果有了pop_front,pop_back这个功能则很容易造成内存碎片,pop_front会造成头部内存产生碎片,pop_back造成尾 ...

  7. Hibernate中session的get方法和load方法的区别

    一.发送SQL时机: load方法采用延迟加载(lazy懒加载),执行到这行代码的时候,不会发送SQL语句,当真正使用这个对象的数据(对象的数据不包括主键)的时候才发送SQL语句: get方法采用立即 ...

  8. asp.net TemplateField模板中的Bind方法和Eval方法

    TemplateField模板中为了能够有限制的或者取出数据库中某列的值时,可以用Bind和Eval方法来实现.以下是Bind方法的格式,Eval的格式也是和Bind一样的. Bind("列 ...

  9. ASP.NET Core 中文文档 第二章 指南(4.10)检查自动生成的Detail方法和Delete方法

    原文 Examining the Details and Delete methods 作者 Rick Anderson 翻译 谢炀(Kiler) 校对 许登洋(Seay).姚阿勇(Mr.Yao) 打 ...

最新文章

  1. UNIX--stat、fstat和lstat函数
  2. 太牛逼!一款软件几乎可以操作所有的数据库!
  3. Mysql访问新数据时先查表
  4. 那些关于区块链革命的事情
  5. nginx安装与配置详解
  6. .Net Core with 微服务 - Ocelot 网关
  7. P4322-[JSOI2016]最佳团体【0/1分数规划,树形背包】
  8. php border-style,border-style
  9. Hadoop系列-HDFS HA高可用集群
  10. 为什么要使用 SQLite 数据库?
  11. 三种urllib实现网页下载,含cookie模拟登陆
  12. oracle tochar fm,oracle的to_char中的fm-Oracle
  13. python 小数乘法_《包装》——小数乘法
  14. 工作台式计算机配置单,台式电脑配置清单.doc
  15. vue表格中的内容换行与导出Excel换行
  16. 把阿拉伯数字全部转换为大写(1,2,3.... = 一、二、三、)
  17. 什么是南向接口和北向接口,南北流量和东西流量
  18. LeNet实现手写数字识别
  19. 什么是SQL注入攻击?
  20. 【Linux Centos6/7 Oracle11g数据库开启归档日志功能】

热门文章

  1. React: Create-React-App
  2. Systrace 基础知识 - 锁竞争解读
  3. centOS 7 安装可视化用户界面
  4. e2e 测试 出现的错误
  5. Keras开发环境安装方法新手教程(GPU版)
  6. 数据、数据元素、数据项、数据对象的介绍和理解
  7. java pdf to word_java pdf转word 高效不失真
  8. 【Linux】进程的概念(1)
  9. JetPack Compose之Modifier修饰符
  10. 将图片转化为数据储存