dedecms二次開發:dedesql.class.php 資料庫類

來源:互聯網
上載者:User

標籤:one   back   目錄   ast   pre   date   主鍵   free   div   

dedecms二次開發目錄點這個:dedecms二次開發教程目錄

系統會自動載入 dedesql.class.php 檔案,並用

$dsql = $db = new DedeSql(false);

進行初始化資料庫連接,因此在工程所有檔案中均不需要單獨初始化這個類,可直接用 $dsql 或 $db 進行操作,為了防止錯誤,操作完後不必關閉資料庫。

常用的方法:

1、執行一個非查詢類型的SQL語句,如 insert 、create 、update 等

$rs = $db->ExecuteNoneQuery($sql);

傳回值為是否執行成功。

2、執行一個非查詢類型的SQL語句,並返回成功記錄數

$rs = $db->ExecuteNoneQuery2($sql);

與上面相比,它返回的是影響的記錄數,而不是布爾值

3、返回單個記錄

$arr = $db->GetOne($sql);

$dsql 如果不帶 limit ,系統會自動加上 limit 0,1

4、執行條件查詢語句

$db->SetQuery($dsql);$db->Execute();while($arr = $db->GetArray()){}$db->SetQuery($dsql);$db->Execute();while($arr = $db->GetArray()){}

可以簡化為:

$db->Execute(‘me‘,$dsql);while($arr = $db->GetArray()){}$db->Execute(‘me‘,$dsql);while($arr = $db->GetArray()){}

‘me‘ 為記錄集遊標,用於區分不同的查詢,如:

$db->Execute(‘me‘,$dsql);while($arr = $db->GetArray()){$db->Execute(‘2‘,$dsql2);while($arr2 = $db->GetArray()){}}$db->Execute(‘me‘,$dsql);while($arr = $db->GetArray()){$db->Execute(‘2‘,$dsql2);while($arr2 = $db->GetArray()){}}

像這種情況必須指定一個值區分預設的‘me‘參數,否則會出錯

$db->GetArray($rsid,$acctype) 參數$rsid="me"$acctype=MYSQL_ASSOC

在查詢遊標中讀取資料還可以用

$db->GetObject($rsid="me");

返回的結果是用類結構表示的值。

5、擷取上一個插入的自動遞增主鍵id值

$db->GetLastID();

6、獲得查詢的總記錄數

$db->GetTotalRow($rsid="me")

7、獲得MySql的版本號碼

$db->GetVersion($isformat=true)

預設的情況下會轉換成 x.xx 形式浮點數

8、析放某查詢的資源

$db->FreeResult($rsid="me");

9、在資料庫中是否存在某資料表

$db->IsTable($tbname)

10、重新選擇要操作的資料庫

$db->SelectDB($dbname);

11、獲得資料庫連接標識

$db->linkID

獲得這個串連標識後,可以直接用mysql相關函數進行資料庫操作

在非不得已的情況,項目中一般不使用這個變數。

dedecms二次開發:dedesql.class.php 資料庫類

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.