《dedecms中數據庫類中常用方法》要點:
本文介紹了dedecms中數據庫類中常用方法,希望對您有用。如果有疑問,可以聯系我們。
相關主題:dedecms教程
導讀:系統會自動載入 dedesql.class.php 文件,并用$dsql = $db = new DedeSql(false);進行初始化數據庫連接,因此在工程所有文件中均不...
系統會自動載入 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->Execute('me',$dsql);
while($arr = $db->GetArray())
{
}
?
'me' 為記錄集游標,用于區分分歧的查詢,如:
?
$db->Execute('me',$dsql);
while($arr = $db->GetArray())
{
? ?$db->Execute('2',$dsql2);
? ?while($arr2 = $db->GetArray())
? ?{
? ? ??
? ?}
}
像這種情況必需指定一個值區分默認的'me'參數,否則會出錯
?
代碼實例:
?
? ? <?php
? ? $dsql->Execute('level1', "select * from function where parent_id=-1 and type='menu'");
? ? while($row1=$dsql->GetArray('level1')){
? ? ?if(!CheckPriv($row1['code']))continue;
? ? ?echo "<h1 class=\"type\"><a href=\"".$row1['url']."\">".$row1['name']."</a></h1>\n";
? ? ?echo "<div class=\"content\">\n<ul class=\"MM\">\n";
? ? ?$dsql->Execute('level2', "select * from function where parent_id=".$row1['id']." and type='menu'");
? ? ?while($row2=$dsql->GetArray('level2')){
? ? ? if(!CheckPriv($row2['code']))continue;
? ? ? echo "<li><a href=\"".$row2['url']."\" target=\"main\">".$row2['name']."</a></li>\n";
? ? ?}
? ? ?echo "</ul>\n</div>\n";
? ? }
? ? ?>
?
$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中數據庫類中常用方法》是否對您有啟發,歡迎查看更多與《dedecms中數據庫類中常用方法》相關教程,學精學透。維易PHP學院為您提供精彩教程。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/10765.html