W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Joomla提供了完善的數(shù)據(jù)庫(kù)抽象層,以簡(jiǎn)化第三方開(kāi)發(fā)人員使用。Joomla支持各種不同的SQL數(shù)據(jù)庫(kù)類型,開(kāi)發(fā)人員只需要調(diào)用Joomla提供的數(shù)據(jù)庫(kù)API接口,系統(tǒng)就會(huì)自動(dòng)處理數(shù)據(jù)庫(kù)的適配以及兼容問(wèn)題,極大的方便了開(kāi)發(fā)者進(jìn)行跨平臺(tái)應(yīng)用的開(kāi)發(fā)。
自Joomla1.6之后,Joomla的數(shù)據(jù)庫(kù)查詢方式發(fā)生了較大的變化,推薦使用構(gòu)建查詢對(duì)象的方式來(lái)查詢(當(dāng)然目前系統(tǒng)仍然支持字符串的查詢)。 數(shù)據(jù)庫(kù)查詢對(duì)象支持鏈?zhǔn)讲僮鳎梢苑奖愕膶?xiě)查詢語(yǔ)句。
我們使用JFactory::getDBO()方法就可以獲得當(dāng)前的數(shù)據(jù)庫(kù)鏈接對(duì)象。系統(tǒng)會(huì)自動(dòng)的使用configruation.php中的鏈接信息進(jìn)行鏈接。代碼如下:
$db = JFactory::getDBO();
為了獲得一個(gè)查詢對(duì)象,首先需獲得數(shù)據(jù)庫(kù)的鏈接對(duì)象,然后調(diào)用鏈接對(duì)象的getQuery方法。代碼如下:
$db = JFactory::getDbo();
$query =$db->getQuery(true);
JDatabaseDriver::getQuery方法接受一個(gè)可選的參數(shù):$new .這是一個(gè)boolean值,默認(rèn)為false,表示是否新獲得一個(gè)查詢對(duì)象。
在查詢對(duì)象中,提供了很多的方法,比如書(shū)select() ,where(),join().from(),order()等等,基本上就是對(duì)SQL的關(guān)鍵詞進(jìn)行了封裝,每一個(gè)關(guān)鍵詞對(duì)應(yīng)一個(gè)方法。查詢對(duì)象支持鏈?zhǔn)讲僮?,可以很方便的?xiě)出各種查詢。一段典型的代碼如下:
//常規(guī)查詢語(yǔ)句
$query ='SELECT * FROM #__zmax_users WHERE id=1'
//查詢對(duì)象的方法
$query->select("*")->from("#__zmax_users")->where("id=1");
我們強(qiáng)烈推薦使用查詢語(yǔ)句來(lái)寫(xiě)SQL,這樣做大大的加強(qiáng)了代碼的可移植性。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: