真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

PHP之PDO

PDO的誕生是為了解決不同數(shù)據(jù)庫(kù)需要不同的PHP類庫(kù):

成都創(chuàng)新互聯(lián)2013年開(kāi)創(chuàng)至今,先為梅縣等服務(wù)建站,梅縣等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為梅縣企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

PHP之PDO

如此,一個(gè)'類庫(kù)'就能搞定

優(yōu)點(diǎn):

1,編碼一致性,2,高適應(yīng)性,3,面向?qū)ο?4,高性能(PDO由c編譯)

開(kāi)啟支持:(PHP5.1+默認(rèn)開(kāi)啟)

linux下編譯時(shí)追加參數(shù): --with-pdo-MySQL

windows下修改PHP.ini 開(kāi)啟或追加

extension=php_pdo.dll

extension=php_pdo_mysql.dll

查看當(dāng)前環(huán)境支持的PDO驅(qū)動(dòng):

1,

phpinfo();

2,

print_r(pdo_drivers());

連接并選擇數(shù)據(jù)庫(kù)(3種方法):

mysql:數(shù)據(jù)庫(kù)名;

dbuser:用戶名;

pswd:密碼;


1,直接用構(gòu)造函數(shù)傳參

$dbh = new PDO('mysql:host=localhost;dbname=mysql', 'dbuser', 'pswd');

2,將連接參數(shù)保存到dsn文件

$dbh = new PDO('uri:file://usr/local/mysql.dsn');

3,寫到php.ini中,連接別名:mysqlpdo

[PDO]

pdo.dsn.mysqlpdo = 'mysql:dbname=mysql;host=localhost'

$dbh = new PDO('mysqlpdo', 'dbuser', 'pswd');

PDO __construct 原型:

PDO PDO::__construct(string DSN [, string username [, string password[, array driver_opts]]])

第四個(gè)參數(shù)主要是一些可選的配置(數(shù)組形式傳參):

常用如下:

1,PDO::ATTR_AUTOCOMMIT //是否自動(dòng)提交事務(wù)

2,PDO::ATTR_CASE //查詢返回的字段名大小寫 可用: PDO::CASE_UPPER,PDO::CASE_LOWER,PDO::CASE_NATURAL(原樣)

3,PDO::ATTR_EMULATE_PREPARES //開(kāi)啟Mysql查詢緩存

4,PDO::ATTR_ERRMODEPDO  //錯(cuò)誤類型 可用: PDO::ERRMODE_EXCEPTION(報(bào)異常), PDO::ERRMODE_SILENT(默認(rèn),不會(huì)顯示任何錯(cuò)誤),PDO::ERRMODE_WARNING(報(bào)PHP E_WARNING).

5,PDO::ATTR_ORACLE_NULLS //默認(rèn)為FALSE 當(dāng)設(shè)置為TRUE時(shí) '空' 轉(zhuǎn)化為 NULL

6,PDO::ATTR_PERSISTENT //持久連接 默認(rèn)為FALSE

7,PDO::ATTR_PREFETCH  //'預(yù)取' 當(dāng)你的查詢一次只需一行結(jié)果,這個(gè)開(kāi)啟后,會(huì)得到多行,減少查詢次數(shù)

8,PDO::ATTR_TIMEOUT //查詢超時(shí)  Mysql暫不支持

9,PDO::DEFAULT_FETCH_MODE //數(shù)據(jù)取回模式 關(guān)聯(lián)數(shù)組/索引數(shù)組/對(duì)象

設(shè)置與獲得參數(shù):

$dbh->getAttribute($attribute);
$dbh->setAttribute($attribute,$value);

例:

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


處理連接錯(cuò)誤:

try {
    $dbh = new PDO('mysql:host=localhost;dbname=mysql', 'dbuser', 'pswd');
} catch (PDOException $exception) {
    echo "Connection error: " . $exception->getMessage();
}


獲取錯(cuò)誤信息:

int PDOStatement::errorCode()
array PDOStatement::errorInfo() //0=>sqlstate , 1=>驅(qū)動(dòng) error code ,2=>驅(qū)動(dòng) error message

執(zhí)行SQL:

$dbh->exec(); //update insert delete 無(wú)結(jié)果集
$dbh->query(); //單次select 有結(jié)果集; 多次請(qǐng)用prepare

function getFruit($dbh) {
    $sql = 'SELECT name, color, calories FROM fruit ORDER BY name';
    foreach ($dbh->query($sql) as $row) {
        print $row['name'] . "\t";
        print $row['color'] . "\t";
        print $row['calories'] . "\n";
    }
}

返回受上一個(gè) SQL 語(yǔ)句影響的行數(shù):

int PDOStatement::rowCount ( void )

時(shí)間有限,稍后再學(xué)習(xí)多次查詢用到的prepare

感謝各位糾錯(cuò),指正


網(wǎng)頁(yè)題目:PHP之PDO
URL鏈接:http://weahome.cn/article/iisshd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部