程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

PHP PDO

編輯:PHP入門知識

PHP PDO

PHP 數據對象 (PDO) 擴展為PHP訪問數據庫定義了一個輕量級的一致接口。

PDO 提供了一個數據訪問抽象層,這意味著,不管使用哪種數據庫,都可以用相同的函數(方法)來查詢和獲取數據。

PDO隨PHP5.1發行,在PHP5.0的PECL擴展中也可以使用,無法運行於之前的PHP版本。


PDO 安裝

你可以通過 PHP 的 phpinfo() 函數來查看是否安裝了PDO擴展。

在 Unix 系統上安裝 PDO

在Unix上或Linux上你需要添加以下擴展:

extension=pdo.so

Windows 用戶

PDO 和所有主要的驅動作為共享擴展隨 PHP 一起發布,要激活它們只需簡單地編輯 php.ini 文件,並添加以下擴展:

extension=php_pdo.dll
除此之外還有以下對應的各種數據庫擴展:

;extension=php_pdo_firebird.dll
;extension=php_pdo_informix.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_oci8.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll

在設定好這些配置後,我們需要重啟PHP 或 Web服務器。

接下來我們們來看下具體的實例,以下為使用PDO連接MySql數據庫的實例:

<?php
$dbms='mysql';     //數據庫類型
$host='localhost'; //數據庫主機名
$dbName='test';    //使用的數據庫
$user='root';      //數據庫連接用戶名
$pass='';          //對應的密碼
$dsn="$dbms:host=$host;dbname=$dbName";


try {
    $dbh = new PDO($dsn, $user, $pass); //初始化一個PDO對象
    echo "連接成功<br/>";
    /*你還可以進行一次搜索操作
    foreach ($dbh->query('SELECT * from FOO') as $row) {
        print_r($row); //你可以用 echo($GLOBAL); 來看到這些值
    }
    */
    $dbh = null;
} catch (PDOException $e) {
    die ("Error!: " . $e->getMessage() . "<br/>");
}
//默認這個不是長連接,如果需要數據庫長連接,需要最後加一個參數:array(PDO::ATTR_PERSISTENT => true) 變成這樣:
$db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true));

?>

很簡單吧,接下來就讓我們來具體看下PHP PDO具體說明:

  • 預定義常量
  • PHP PDO連接連接管理
  • PHP PDO 事務與自動提交
  • PHP PDO 預處理語句與存儲過程
  • PHP PDO 錯誤與錯誤處理
  • PHP PDO 大對象 (LOBs)
  • PDO 類:
    • PDO::beginTransaction — 啟動一個事務
    • PDO::commit — 提交一個事務
    • PDO::__construct — 創建一個表示數據庫連接的 PDO 實例
    • PDO::errorCode — 獲取跟數據庫句柄上一次操作相關的 SQLSTATE
    • PDO::errorInfo — 返回最後一次操作數據庫的錯誤信息
    • PDO::exec — 執行一條 SQL 語句,並返回受影響的行數
    • PDO::getAttribute — 取回一個數據庫連接的屬性
    • PDO::getAvailableDrivers — 返回一個可用驅動的數組
    • PDO::inTransaction — 檢查是否在一個事務內
    • PDO::lastInsertId — 返回最後插入行的ID或序列值
    • PDO::prepare — 備要執行的SQL語句並返回一個 PDOStatement 對象
    • PDO::query — 執行 SQL 語句,返回PDOStatement對象,可以理解為結果集
    • PDO::quote — 為SQL語句中的字符串添加引號。
    • PDO::rollBack — 回滾一個事務
    • PDO::setAttribute — 設置屬性
  • PDOStatement 類:
    • PDOStatement::bindColumn — 綁定一列到一個 PHP 變量
    • PDOStatement::bindParam — 綁定一個參數到指定的變量名
    • PDOStatement::bindValue — 把一個值綁定到一個參數
    • PDOStatement::closeCursor — 關閉游標,使語句能再次被執行。
    • PDOStatement::columnCount — 返回結果集中的列數
    • PDOStatement::debugDumpParams — 打印一條 SQL 預處理命令
    • PDOStatement::errorCode — 獲取跟上一次語句句柄操作相關的 SQLSTATE
    • PDOStatement::errorInfo — 獲取跟上一次語句句柄操作相關的擴展錯誤信息
    • PDOStatement::execute — 執行一條預處理語句
    • PDOStatement::fetch — 從結果集中獲取下一行
    • PDOStatement::fetchAll — 返回一個包含結果集中所有行的數組
    • PDOStatement::fetchColumn — 從結果集中的下一行返回單獨的一列。
    • PDOStatement::fetchObject — 獲取下一行並作為一個對象返回。
    • PDOStatement::getAttribute — 檢索一個語句屬性
    • PDOStatement::getColumnMeta — 返回結果集中一列的元數據
    • PDOStatement::nextRowset — 在一個多行集語句句柄中推進到下一個行集
    • PDOStatement::rowCount — 返回受上一個 SQL 語句影響的行數
    • PDOStatement::setAttribute — 設置一個語句屬性
    • PDOStatement::setFetchMode — 為語句設置默認的獲取模式。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved