PDO使用手冊

2021-05-22 21:52:51 字數 2931 閱讀 7053

pdo使用手冊

是php 5

新出來的東西,在

php 6

都要出來的時候,

php 6

只預設使用

pdo來處理資料庫,將把所有的資料庫擴充套件移到了

pecl

,那麼預設就是沒有了我們喜愛的

php_mysql.dll

之類的了

【pdo是啥】

pdo是php 5新加入的乙個重大功能,因為在php 5以前的php4/php3都是一堆的資料庫擴充套件來跟各個資料庫的連線和處理,什麼php_mysql.dll、php_pgsql.dll、php_mssql.dll、php_sqlite.dll等等擴充套件來連線mysql、postgresql、ms sql server、sqlite,同樣的,我們必須借助adodb、pear::db、phplib::db之類的資料庫抽象類來幫助我們,無比煩瑣和低效,畢竟,php**的效率怎麼能夠我們直接用c/c++寫的擴充套件斜率高捏?所以嘛,pdo的出現是必然的.

1先找到配置檔案php.ini中以下幾項擴充套件

extension=php_pdo_firebird.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

2.使用pdo連線資料庫(注意執行結束時註消當然不註消也不會出現錯誤):

$dbh = new pdo("mysql:host=localhost;dbname=$dbname", $user, $pwd);

$dbh = null;//(unset)

3.一些簡單的執行(關鍵字:exec)

<?php

$dbname="myzjh";

$user="root";

$pwd="123456";

$dbh = new pdo("mysql:host=localhost;dbname=$dbname", $user, $pwd);

$result = $dbh->exec("insert into test set name = 'seal',age='20'");

$result=$dbh->exec("delete from test where name='seal'");

$dbh = null;

?>

執行失敗則返回0;

4.查詢輸出資料常用方法一:

$rs = $dbh->query("select * from test");

while($row = $rs->fetch())

5.查詢資料方法二:

foreach ($dbh->query('select * from test') as $row)

6.查詢資料方法三:

$stmt = $dbh->prepare("select * from test");

if ($stmt->execute())

}6.1 pdo::prepare 別類查詢方式(execute功能很強大):

$stmt = $dbh->prepare("select * from test where name = ?");

if ($stmt->execute(array("zjh")))

}7.執行的別種方式(也是用execute)

$stmt = $dbh->prepare("insert into test (name, age) values (?, ?)");//and updata

$stmt->bindparam(1, $name);

$stmt->bindparam(2, $age);

$name = 'one';// insert one row

$age = 1;

$stmt->execute();

$name = 'two';// insert another row with different values

$age = 2;

$stmt->execute();

關鍵字總結

查詢操作主要是

pdo::query(): 主要是用於有記錄結果返回的操作,特別是select操作

pdo::exec(): 主要是針對沒有結果集合返回的操作,比如insert、update、delete等操作,它返回的結果是當前操作影響的列數

pdo::prepare(): 主要是預處理操作,需要通過$rs->execute()來執行預處理裡面的sql語句,這個方法可以繫結引數,功能比較強大

獲取結果集操作主要是:

pdostatement::fetchcolumn(): 是獲取結果指定第一條記錄的某個字段,預設是第乙個字段

pdostatement::fetch():是用來獲取一條記錄

pdostatement::fetchall():是獲取所有記錄集到乙個中,獲取結果可以通過pdostatement::setfetchmode來設定需要結果集合的型別。

另外有兩個周邊的操作,

pdo::lastinsertid():是返回上次插入操作,主鍵列型別是自增的最後的自增id。

pdostatement::rowcount() :主要是用於pdo::query()和pdo::prepare()進行delete、insert、update操作影響的結果集,對pdo::exec()方法和select操作無效。

完整的例子可看pdo.php

CVS使用手冊

注意 第一次匯出以後,就不是通過cvs checkout來同步檔案了,而是要進入剛才cvs checkout project name匯出的project name目錄下進行具體檔案的版本同步 新增,修改,刪除 操作。cvs的許可權管理分2種策略 基於系統檔案許可權的系統使用者管理 適合多個在lin...

sed使用手冊

原貼 http blog.chinaunix.net u 23204 showart 305602.html sed使用手冊 原創 在sed語句,正規表示式必須封閉在 中間。如 d,刪除空行。sed位址 在sed位址管理中,預設是對全域性進行操作,同時位址可以分為行位址和模式位址。如1,10d 12...

vi 使用手冊

進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filename 開啟檔案,並將游標置於第n行首 vi filename 開啟檔案,並將游標置於最後一行首 vi pattern filename 開啟檔案,並將游標置於第乙個與pattern匹配的串處 vi r...