新聞中心
作為PHP的一個(gè)開(kāi)發(fā)框架,CodeIgniter(CI)已經(jīng)成為了許多不同領(lǐng)域的開(kāi)發(fā)者的必備工具。它的快速開(kāi)發(fā)和易于上手的特點(diǎn)讓它成為了企業(yè)級(jí)應(yīng)用和網(wǎng)站開(kāi)發(fā)的首選框架。然而隨著企業(yè)的業(yè)務(wù)逐漸擴(kuò)大,數(shù)據(jù)庫(kù)的使用也越來(lái)越復(fù)雜,要想真正將CI框架發(fā)揮出更大的效能,需要學(xué)習(xí)如何實(shí)現(xiàn)多數(shù)據(jù)庫(kù)鏈接。

成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)與策劃設(shè)計(jì),進(jìn)賢網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:進(jìn)賢等地區(qū)。進(jìn)賢做網(wǎng)站價(jià)格咨詢:028-86922220
CI框架默認(rèn)是只能連接一種數(shù)據(jù)庫(kù)的,但是實(shí)際開(kāi)發(fā)中我們往往需要連接多個(gè)數(shù)據(jù)庫(kù)。在傳統(tǒng)的開(kāi)發(fā)中,我們通常會(huì)采用手寫查詢語(yǔ)句和數(shù)據(jù)處理代碼和連接池技術(shù)來(lái)實(shí)現(xiàn)多數(shù)據(jù)源操作,這會(huì)大大增加開(kāi)發(fā)人員的工作負(fù)擔(dān)和編寫周期,而CI框架提供的多數(shù)據(jù)庫(kù)鏈接技巧卻可以輕松解決這個(gè)問(wèn)題。
1. 在配置文件中定義多個(gè)數(shù)據(jù)庫(kù)
在CI框架中定義多個(gè)數(shù)據(jù)庫(kù)是必不可少的。你可以將數(shù)據(jù)庫(kù)連接信息配置在CI中的默認(rèn)配置文件“database.php”中。在該配置文件中,需要做以下步驟:
(1)定義數(shù)據(jù)庫(kù)連接基本信息,如主機(jī)地址,服務(wù)器端口,用戶名和密碼等。
(2)為不同的數(shù)據(jù)庫(kù)添加別名,方便程序控制。
例如:
‘user_db’ => array(
‘dsn’ => ”,
‘hostname’ => ‘localhost’,
‘username’ => ‘root’,
‘password’ => ”,
‘database’ => ‘user_db’,
‘dbdriver’ => ‘mysqli’,
‘dbprefix’ => ”,
‘pconnect’ => FALSE,
‘db_debug’ => (ENVIRONMENT !== ‘production’),
‘cache_on’ => FALSE,
‘cachedir’ => ”,
‘char_set’ => ‘utf8’,
‘dbcollat’ => ‘utf8_general_ci’,
‘swap_pre’ => ”,
‘encrypt’ => FALSE,
‘compress’ => FALSE,
‘stricton’ => FALSE,
‘flover’ => array(),
‘save_queries’ => TRUE
)
‘order_db’ => array(
‘dsn’ => ”,
‘hostname’ => ‘localhost’,
‘username’ => ‘root’,
‘password’ => ”,
‘database’ => ‘order_db’,
‘dbdriver’ => ‘mysqli’,
‘dbprefix’ => ”,
‘pconnect’ => FALSE,
‘db_debug’ => (ENVIRONMENT !== ‘production’),
‘cache_on’ => FALSE,
‘cachedir’ => ”,
‘char_set’ => ‘utf8’,
‘dbcollat’ => ‘utf8_general_ci’,
‘swap_pre’ => ”,
‘encrypt’ => FALSE,
‘compress’ => FALSE,
‘stricton’ => FALSE,
‘flover’ => array(),
‘save_queries’ => TRUE
)
2. 切換不同的數(shù)據(jù)庫(kù)鏈接
定義好不同的數(shù)據(jù)庫(kù)之后,我們需要切換不同的數(shù)據(jù)庫(kù)鏈接。這里我們引入CI框架的數(shù)據(jù)庫(kù)類庫(kù)中的“DB”類庫(kù),可以通過(guò)以下方法輕松實(shí)現(xiàn):
(1)加載CI框架提供的數(shù)據(jù)庫(kù)類庫(kù)
$this->load->database();
(2)傳遞數(shù)據(jù)庫(kù)別名
例如:
$this->load->database(‘user_db’);
通過(guò)CI框架提供的“DB”類庫(kù),我們可以方便的執(zhí)行CRUD操作。當(dāng)需要切換到另一個(gè)數(shù)據(jù)庫(kù)的時(shí)候,我們只需要再次傳遞新的別名即可。
3. 使用CI框架默認(rèn)語(yǔ)法
使用CI框架默認(rèn)語(yǔ)法就可以正常操作數(shù)據(jù)庫(kù)啦?;贑I框架的默認(rèn)語(yǔ)法,我們可以輕松實(shí)現(xiàn)對(duì)不同數(shù)據(jù)庫(kù)的讀寫操作。
例如:
$this->user_db->select(‘*’)->from(‘user’)->get();
$this->order_db->select(‘*’)->from(‘orders’)->get();
結(jié)語(yǔ)
要想在CI框架中實(shí)現(xiàn)多數(shù)據(jù)源操作,首先我們需要在配置文件中定義不同的數(shù)據(jù)庫(kù)連結(jié);其次我們需要使用CI框架提供的多數(shù)據(jù)庫(kù)鏈接方法,以及DB類庫(kù),實(shí)現(xiàn)不同數(shù)據(jù)庫(kù)的切換;最后我們可以通過(guò)CI框架的默認(rèn)語(yǔ)法,開(kāi)展對(duì)不同數(shù)據(jù)庫(kù)的操作。
無(wú)論是對(duì)于新手還是有一定經(jīng)驗(yàn)的PHP開(kāi)發(fā)者來(lái)說(shuō),學(xué)習(xí)CI框架的多數(shù)據(jù)庫(kù)鏈接技巧都是很重要的。CI框架提供的多數(shù)據(jù)源操作使得開(kāi)發(fā)人員可以更輕松地操作不同的數(shù)據(jù)庫(kù),減少了開(kāi)發(fā)的負(fù)擔(dān),提高了開(kāi)發(fā)效率,可以讓我們更加專注于業(yè)務(wù)和產(chǎn)品的研發(fā),更好地服務(wù)于客戶。
相關(guān)問(wèn)題拓展閱讀:
- CI連接MSSQL 分頁(yè)問(wèn)題 求助!!!!!!
CI連接MSSQL 分頁(yè)問(wèn)題 求助!!!!!!
那個(gè)東西不一定適合所有 CI 版本和 MSSQL 版本。請(qǐng)自己寫一個(gè)可以支持 limit 功能的 SQL 腳本。租碼之前的也是從官網(wǎng)轉(zhuǎn)過(guò)來(lái)的,早型寬我已經(jīng)不用 mssql 了,呵呵陸亮。
ci 鏈接多個(gè)數(shù)據(jù)庫(kù)的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于ci 鏈接多個(gè)數(shù)據(jù)庫(kù),CI框架實(shí)現(xiàn)多數(shù)據(jù)庫(kù)鏈接的技巧,CI連接MSSQL 分頁(yè)問(wèn)題 求助!!!!!!的信息別忘了在本站進(jìn)行查找喔。
成都服務(wù)器托管選創(chuàng)新互聯(lián),先上架開(kāi)通再付費(fèi)。
創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)-網(wǎng)站建設(shè),軟件開(kāi)發(fā)老牌服務(wù)商!微信小程序開(kāi)發(fā),APP開(kāi)發(fā),網(wǎng)站制作,網(wǎng)站營(yíng)銷推廣服務(wù)眾多企業(yè)。電話:028-86922220
網(wǎng)頁(yè)題目:CI框架實(shí)現(xiàn)多數(shù)據(jù)庫(kù)鏈接的技巧 (ci 鏈接多個(gè)數(shù)據(jù)庫(kù))
文章起源:http://fisionsoft.com.cn/article/djccpoe.html


咨詢
建站咨詢
