作者 主題: 分享PEAR::DB使用---part3  (閱讀 6467 次)

0 會員 與 1 訪客 正在閱讀本文。

ricky

  • 實習板主
  • 鑽研的研究生
  • *****
  • 文章數: 669
    • 檢視個人資料
    • Ricky 碎碎唸
分享PEAR::DB使用---part3
« 於: 2005-06-20 10:41 »
最後我們再來提一下
PEAR :: DB的一些雜項使用法

限制式的查詢
DB_common::limitQuery()
還記得在part 2的query嗎
如果要限制輸出範圍
除了直接在sql中加上limit敘述之外
也可以直接使用limitQuery()
像這樣
    $res =& $db->limitQuery('SELECT * FROM foo', 49, 10);

表示從foo這個table中列出第50筆資料開始連續100筆的資料
注意如果第二個參數是0的時候代表第1筆資料

交易處理
PEAR :: DB也提供了交易處理的相關函數
方便使用
跟交易相關的函數有以下三個
autoCommit()
commit()
rollback()
我們來看看下面的範例
    <?php
    $db->autoCommit(false);
    $db->query('INSERT INTO blah (a) VALUES (11)');
    $res =& $db->query('SELECT b FROM blue');
    if (DB::isError($res))
    {
      $db->rollback();
      die($res->getMessage() . "\n");
    }
    $res->free();
    $db->commit();
    ?>

開始時我們將autoCommit設為off(預設是on)
表示我們要起始一個交易
如果執行成功就呼叫commit()表示確認這筆交易
失敗那就只好呼叫rollback()嘍

PEAR :: DB的簡單用法就這樣
如果還想更深入研究
可以參考以下網站
http://pear.php.net/package/DB
我的symfony作品:YOMOpets 寵物誌
有興趣可以一起來討論symfony喔
我的部落格:http://ricky.ez2.us/