• PHP中的PDO函数库


    PDO是一个“数据库访问抽象层”,作用是统一各种数据库的访问接口,与mysql和mysqli的函数库相比,PDO让跨数据库的使用更具有亲和力;与ADODB和MDB2相比,PDO更高效。

    目前而言,实现“数据库抽象层”任重而道远,使用PDO这样的“数据库访问抽象层”是一个不错的选择。

    PDO中包含三个预定义的类

    PDO中包含三个预定义的类,它们分别是 PDO、PDOStatement 和 PDOException。

    一、PDO

    PDO->beginTransaction() — 标明回滚起始点
    PDO->commit() — 标明回滚结束点,并执行SQL
    PDO->__construct() — 建立一个PDO链接数据库的实例
    PDO->errorCode() — 获取错误码
    PDO->errorInfo() — 获取错误的信息
    PDO->exec() — 处理一条SQL语句,并返回所影响的条目数
    PDO->getAttribute() — 获取一个“数据库连接对象”的属性
    PDO->getAvailableDrivers() — 获取有效的PDO驱动器名称
    PDO->lastInsertId() — 获取写入的最后一条数据的主键值
    PDO->prepare() — 生成一个“查询对象”
    PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement”
    PDO->quote() — 为某个SQL中的字符串添加引号
    PDO->rollBack() — 执行回滚
    PDO->setAttribute() — 为一个“数据库连接对象”设定属性

    二、PDOStatement

    PDOStatement->bindColumn() — Bind a column to a PHP variable
    PDOStatement->bindParam() — Binds a parameter to the specified variable name
    PDOStatement->bindValue() — Binds a value to a parameter
    PDOStatement->closeCursor() — Closes the cursor, enabling the statement to be executed again.
    PDOStatement->columnCount() — Returns the number of columns in the result set
    PDOStatement->errorCode() — Fetch the SQLSTATE associated with the last operation on the statement handle
    PDOStatement->errorInfo() — Fetch extended error information associated with the last operation on the statement handle
    PDOStatement->execute() — Executes a prepared statement
    PDOStatement->fetch() — Fetches the next row from a result set
    PDOStatement->fetchAll() — Returns an array containing all of the result set rows
    PDOStatement->fetchColumn() — Returns a single column from the next row of a result set
    PDOStatement->fetchObject() — Fetches the next row and returns it as an object.
    PDOStatement->getAttribute() — Retrieve a statement attribute
    PDOStatement->getColumnMeta() — Returns metadata for a column in a result set
    PDOStatement->nextRowset() — Advances to the next rowset in a multi-rowset statement handle
    PDOStatement->rowCount() — Returns the number of rows affected by the last SQL statement
    PDOStatement->setAttribute() — Set a statement attribute
    PDOStatement->setFetchMode() — Set the default fetch mode for this statement

    PDO是一个“数据库访问抽象层”,作用是统一各种数据库的访问接口,与mysql和mysqli的函数库相比,PDO让跨数据库的使用更具有亲和力;与ADODB和MDB2相比,PDO更高效。目前而言,实现“数据库抽象层”任重而道远,使用PDO这样的“数据库访问抽象层”是一个不错的选择。

    三、PDOException

    PDO 提供了3中不同的错误处理策略。
    1. PDO::ERRMODE_SILENT
    这是默认使用的模式。PDO会在statement和database对象上设定简单的错误代号,你可以使用PDO->errorCode() 和 PDO->errorInfo() 方法检查错误;如果错误是在对statement对象进行调用时导致的,你就可以在那个对象上使用 PDOStatement->errorCode() 或 PDOStatement->errorInfo() 方法取得错误信息。而如果错误是在对database对象调用时导致的,你就应该在这个database对象上调用那两个方法。
    2. PDO::ERRMODE_WARNING
    作为设置错误代号的附加,PDO将会发出一个传统的E_WARNING信息。这种设置在除错和调试时是很有用的,如果你只是想看看发生了什么问题而不想中断程序的流程的话。
    3. PDO::ERRMODE_EXCEPTION
    作为设置错误代号的附件,PDO会抛出一个PDOException异常并设置它的属性来反映错误代号和错误信息。这中设置在除错时也是很有用的,因为他会有效的“放大(blow up)”脚本中的出错点,非常快速的指向一个你代码中可能出错区域。(记住:如果异常导致脚本中断,事务处理回自动回滚。)
    异常模式也是非常有用的,因为你可以使用比以前那种使用传统的PHP风格的错误处理结构更清晰的结构处理错误,比使用安静模式使用更少的代码及嵌套,也能够更加明确地检查每个数据库访问的返回值。
    关于PHP中异常的更多信息请看Exceptions章节
    PDO 使用基于SQL-92 SQLSTATE 的错误代号字符串;特定的PDO驱动应当将自己本身的代号对应到适当的SQLSTATE代号上。PDO->errorCode() 方法只返回单一的SQLSTATE代号。如果你需要关于一个错误的更加有针对性的信息,PDO也提供了一个PDO->errorInfo()方法,它可以返回一个包含了SQLSTATE代号,特定数据库驱动的错误代号和特定数据库驱动的错误说明字符串。

  • 相关阅读:
    SP是什么?CP是什么?SP与CP有什么区别?
    SP与CP将走向互补融合
    SP与CP分工
    Asynchronous Socket 顺序
    Asynchronous Client Socket Example
    Synchronous Server Socket Example
    web应用程序根目录
    简单socket服务(一)
    Asynchronous Server Socket Example
    Socket连接不上的问题
  • 原文地址:https://www.cnblogs.com/lxy1023-/p/7277395.html
Copyright © 2020-2023  润新知