天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php之CodeIgniter學(xué)習(xí)筆記

在使用數(shù)據(jù)庫(kù)之前,我們最好將數(shù)據(jù)庫(kù)進(jìn)行自動(dòng)連接:config/autoload.php自動(dòng)加載 $autoload['libraries'] = array('database');
一些常用函數(shù)

選擇數(shù)據(jù)
$this->db->select();
允許你在SQL查詢中寫 SELECT 部分。
$this->db->where();
$this->db->or_where();
$this->db->where_in();
允許你在SQL查詢中寫 WHERE部分,其余各種where語(yǔ)句請(qǐng)看手冊(cè)。
$this->db->get();
運(yùn)行選擇查詢語(yǔ)句并且返回結(jié)果集。可以獲取一個(gè)表的全部數(shù)據(jù)。
$this->db->like();
$this->db->or_like();
$this->db->not_like();
本函數(shù)允許你生成 LIKE 子句,在做查詢時(shí)非常有用,其余語(yǔ)法請(qǐng)看手冊(cè)。
$this->db->order_by();
幫助你設(shè)置一個(gè) ORDER BY 子句。
$this->db->group_by();
允許你編寫查詢語(yǔ)句中的 GROUP BY 部分:
$this->db->distinct();
為查詢語(yǔ)句添加 "DISTINCT" 關(guān)鍵字:
$this->db->having();
允許你為你的查詢語(yǔ)句編寫 HAVING 部分。
$this->db->limit();
限制查詢所返回的結(jié)果數(shù)量:
$this->db->select_max();
為你的查詢編寫一個(gè) "SELECT MAX(field)"。
$this->db->select_min();
為你的查詢編寫一個(gè) "SELECT MIN(field)" 。
$this->db->select_avg();
為你的查詢編寫一個(gè) "SELECT AVG(field)" 
$this->db->select_sum();
為你的查詢編寫一個(gè) "SELECT SUM(field)" 。
$this->db->join();
允許你編寫查詢中的JOIN部分。
$this->db->count_all_results();
允許你獲得某個(gè)特定的Active Record查詢所返回的結(jié)果數(shù)量??梢允褂?/SPAN>Active Record限制函數(shù),例如 where(), or_where(), like(), or_like() 等等。

插入數(shù)據(jù)

$this->db->insert();
生成一條基于你所提供的數(shù)據(jù)的SQL插入字符串并執(zhí)行查詢。你可以向函數(shù)傳遞 數(shù)組 或一個(gè) 對(duì)象。
$this->db->insert_batch();
一次插入多條數(shù)據(jù),生成一條基于你所提供的數(shù)據(jù)的SQL插入字符串并執(zhí)行查詢。你可以向函數(shù)傳遞 數(shù)組 或一個(gè) 對(duì)象。
$this->db->set();
本函數(shù)使您能夠設(shè)置inserts(插入)updates(更新)值。它可以用來(lái)代替那種直接傳遞數(shù)組給插入和更新函數(shù)的方式。

更新數(shù)據(jù)

$this->db->update();
根據(jù)你提供的數(shù)據(jù)生成并執(zhí)行一條update(更新)語(yǔ)句。你可以將一個(gè)數(shù)組或者對(duì)象傳遞給本函數(shù)。
$this->db->update_batch();
Generates an update string based on the data you supply, and runs the query. You can either pass an array or an object to the function. Here is an example using an array:

刪除數(shù)據(jù)

$this->db->delete();
生成并執(zhí)行一條DELETE(刪除)語(yǔ)句。
$this->db->empty_table();
生成并執(zhí)行一條DELETE(刪除)語(yǔ)句。
$this->db->truncate();
生成并執(zhí)行一條TRUNCATE(截?cái)?/SPAN>)語(yǔ)句。

鏈?zhǔn)椒椒?/SPAN>

鏈?zhǔn)椒椒ㄔ试S你以連接多個(gè)函數(shù)的方式簡(jiǎn)化你的語(yǔ)法??紤]一下這個(gè)范例:
$this->db->select('title')->from('mytable')->where('id', $id)->limit(10, 20);
$query = $this->db->get();
說(shuō)明鏈?zhǔn)椒椒ㄖ荒茉?/SPAN>php 5下面運(yùn)行。

查詢

$this->db->query();
要提交一個(gè)查詢,用以下函數(shù):
$this->db->query('YOUR QUERY HERE');
query() 函數(shù)以object(對(duì)象)的形式返回一個(gè)數(shù)據(jù)庫(kù)結(jié)果集。 當(dāng)使用 "read" 模式來(lái)運(yùn)行查詢時(shí)你可以使用顯示你的結(jié)果集來(lái)顯示查詢結(jié)果當(dāng)使用 "write" 模式來(lái)運(yùn)行查詢時(shí)將會(huì)僅根據(jù)執(zhí)行的成功或失敗來(lái)返回 TRUE 或 FALSE. 

轉(zhuǎn)義查詢

$this->db->escape()這個(gè)函數(shù)將會(huì)確定數(shù)據(jù)類型,以便僅對(duì)字符串類型數(shù)據(jù)進(jìn)行轉(zhuǎn)義。并且,它也會(huì)自動(dòng)把數(shù)據(jù)用單引號(hào)括起來(lái),所以你不必手動(dòng)添加單引號(hào),用法如下:  $sql = "INSERT INTO table (title) VALUES(".$this->db->escape($title).")";

查詢輔助函數(shù)

$this->db->insert_id()  
這個(gè)ID號(hào)是執(zhí)行數(shù)據(jù)插入時(shí)的ID。 
$this->db->affected_rows()
當(dāng)執(zhí)行寫入操作(insert,update等)的查詢后,顯示被影響的行數(shù)。
$this->db->count_all();
計(jì)算出指定表的總行數(shù)并返回。在第一個(gè)參數(shù)中寫入被提交的表名。

生成查詢記錄集

result()
該方法執(zhí)行成功返回一個(gè)object 數(shù)組,失敗則返回一個(gè)空數(shù)組。
result_array()
該方法執(zhí)行成功時(shí)將記錄集作為關(guān)聯(lián)數(shù)組返回。失敗時(shí)返回空數(shù)組。
row()
該函數(shù)將當(dāng)前請(qǐng)求的第一行數(shù)據(jù)作為 object 返回。

你可以傳遞參數(shù)(參數(shù)是行的索引)以便獲得某一行的數(shù)據(jù)。比如我們要獲得第 行的數(shù)據(jù): $row = $query->row(4);

row_array()
功能與 row() 一樣區(qū)別在于該函數(shù)返回的是一個(gè)數(shù)組。

除此以外我們還可以使用下面的方法通過(guò)游標(biāo)的方式獲取記錄:

$row = $query->first_row()
$row = $query->last_row()
$row = $query->next_row()
$row = $query->previous_row()
默認(rèn)情況下他們將返回一個(gè) object,同時(shí)你也可以傳遞參數(shù) "array" 以便使用 array 的方式獲取數(shù)據(jù) $row = $query->first_row('array')
$row = $query->last_row('array')
$row = $query->next_row('array')
$row = $query->previous_row('array')

結(jié)果集輔助函數(shù)

$query->num_rows()
該函數(shù)將會(huì)返回當(dāng)前請(qǐng)求的行數(shù)。
$query->num_fields()
該函數(shù)返回當(dāng)前請(qǐng)求的字段數(shù)(列數(shù)):
$query->free_result()
該函數(shù)將會(huì)釋放當(dāng)前查詢所占用的內(nèi)存并刪除其關(guān)聯(lián)的資源標(biāo)識(shí)。

自動(dòng)連接

自動(dòng)連接” 功能將在每個(gè)一頁(yè)面加載時(shí)被自動(dòng)實(shí)例化數(shù)據(jù)庫(kù)類。要啟用自動(dòng)連接,可在application/config/autoload.php中的 library 數(shù)組里添加 database
$autoload['libraries'] = array('database');

手動(dòng)連接

如果僅僅是一部分頁(yè)面要求數(shù)據(jù)庫(kù)連接,你可以在你有需要的函數(shù)里手工添加如下代碼或者在你的類里手工添加以供該類使用。
$this->load->database();

連接多數(shù)據(jù)庫(kù)

如果你需要同時(shí)連接多于一個(gè)的數(shù)據(jù)庫(kù),你可以用以下方式來(lái)實(shí)現(xiàn):
$DB1 = $this->load->database('group_one', TRUE);
$DB2 = $this->load->database('group_two', TRUE);

表數(shù)據(jù)

$this->db->list_tables();
返回一個(gè)包含當(dāng)前連接數(shù)據(jù)庫(kù)中所有表名稱的數(shù)組。
$this->db->table_exists();
有時(shí),在對(duì)某個(gè)表執(zhí)行操作之前,使用該函數(shù)判斷指定表是否存在很有用。返回一個(gè)布爾值。

數(shù)據(jù)庫(kù)工具類

重要提示:  初始化數(shù)據(jù)庫(kù)工具類之前,你的數(shù)據(jù)庫(kù)驅(qū)動(dòng)必須已經(jīng)運(yùn)行,因?yàn)楣ぞ哳愐蕾囉诖恕?/SPAN>
加載工具類: $this->load->dbutil()
一旦初始化完畢,你可以通過(guò) $this->dbutil 對(duì)象來(lái)訪問(wèn)成員函數(shù):
$this->dbutil->list_databases()
$this->dbutil->database_exists();
$this->dbutil->xml_from_result($db_result)
$this->dbutil->backup()

數(shù)據(jù)庫(kù)緩存類

激活緩存需要三步:
1、服務(wù)器上創(chuàng)建一個(gè)可寫的目錄以便保存緩存文件。
2在文件 application/config/database.php $db['xxxx']['cachedir']設(shè)置其目錄。
3、激活緩存特性,可以在文件 application/config/database.php 中設(shè)置全局選項(xiàng)$db['xxxx']['cache_on']='TRUE',也可以用以本頁(yè)下面的方法手動(dòng)設(shè)置。
一旦被激活,每一次含有數(shù)據(jù)庫(kù)查詢的頁(yè)面被加載時(shí)緩存就會(huì)自動(dòng)發(fā)生。

當(dāng)有數(shù)據(jù)庫(kù)更新,我們需要?jiǎng)h除緩存文件
$this->db->cache_delete()
刪除緩存文件與特定網(wǎng)頁(yè)。如果你需要清除緩存后,更新您的數(shù)據(jù)庫(kù)
$this->db->cache_delete('/blog', 'comments');
注意,手冊(cè)上寫的是 $this->db->cache_delete('blog', 'comments');但根據(jù)實(shí)際測(cè)試應(yīng)該在控制器名字前加斜杠'/'才能正確執(zhí)行。
$this->db->cache_delete_all()
清除所有所有的緩存文件。

數(shù)據(jù)庫(kù)維護(hù)類

注意:  欲初始化數(shù)據(jù)庫(kù)維護(hù)類,請(qǐng)確保你的數(shù)據(jù)庫(kù)驅(qū)動(dòng)已經(jīng)運(yùn)行,因?yàn)樵擃愐蕾囉跀?shù)據(jù)庫(kù)驅(qū)動(dòng)。
使用如下方法載入數(shù)據(jù)庫(kù)維護(hù)類:
$this->load->dbforge()
一旦初始化,就可以使用$this->dbforge 對(duì)象訪問(wèn)類中函數(shù):
$this->dbforge->create_database('db_name')
允許你創(chuàng)建由第一個(gè)參數(shù)指定的數(shù)據(jù)庫(kù)。
$this->dbforge->drop_database('db_name')
允許你刪除由第一個(gè)參數(shù)指定的數(shù)據(jù)庫(kù)。
$this->dbforge->create_table('table_name');
聲明了字段和鍵之后,你就可以創(chuàng)建一個(gè)表。  

php技術(shù)php之CodeIgniter學(xué)習(xí)筆記,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 持田香织abc | 99久久热视频只有精品 | 久久精品在现线观看免费15 | 小鸟酱喷水 | 欧美精品乱码99久久蜜桃 | 99视频这里只有精品国产 | 免费毛片观看 | 99久久做夜夜爱天天做精品 | 亚洲AVAV天堂AV在线网爱情 | 久久99国产精品二区不卡 | 绑着男军人的扒开内裤 | 国产九九熟女在线视频 | 国产精品路线1路线2路线 | www.欧美与曽交性video | 国产午夜免费不卡精品理论片 | 精品无码久久久久久动漫 | 无套内射在线观看THEPORN | 国产精品久久久久婷婷五月色婷婷 | 阿力gv资源 | 成人网视频在线观看免费 | 欧洲精品不卡1卡2卡三卡四卡 | 一受n攻高h全肉np | 国产中文字幕乱码一区 | 国产精品久久久久成人免费 | 免费看黄色一级 | 岛国片在线免费观看 | 寂寞护士中文字幕 mp4 | 久久免费视频在线观看6 | 欧美日韩另类在线观看视频 | 男人私gay挠脚心vk视频 | 浪潮AV色综合久久天堂 | 黑吊大战白xxxxxx | 日韩精品无码久久一区二区三 | 色偷偷成人网免费视频男人的天堂 | 久久精品免视看国产 | 色老99九久精品偷偷鲁 | HEYZO精品无码一区二区三区 | 99热这里只有精品88 | 菠萝菠萝蜜高清观看在线 | 日韩视频中文在线一区 | 色噜噜噜视频 |