国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > PHP > 正文

實(shí)現(xiàn)PHP框架系列文章(6)mysql數(shù)據(jù)庫(kù)方法

2024-05-04 23:43:30
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
這篇文章主要介紹了實(shí)現(xiàn)PHP框架系列文章(6)mysql數(shù)據(jù)庫(kù)方法的相關(guān)資料,需要的朋友可以參考下
 

實(shí)現(xiàn)一個(gè)mysql數(shù)據(jù)庫(kù)封裝需要考慮的問(wèn)題

1.使用方便性

采用直接sql語(yǔ)句操作方式。只要會(huì)寫(xiě)sql語(yǔ)句,那么將沒(méi)有其他學(xué)習(xí)成本。

uctphp框架提供的dba輔助封裝類(lèi),用會(huì)之后將愛(ài)不釋手。

使用前需要顯示初始化并連接到數(shù)據(jù)庫(kù)嗎,當(dāng)然不需要。

直到執(zhí)行第一條sql語(yǔ)句之前,都不會(huì)去連接數(shù)據(jù)庫(kù),甚至不會(huì)new一個(gè)db對(duì)象。

dba將會(huì)在合適的時(shí)機(jī)去連接數(shù)據(jù)庫(kù)并執(zhí)行初始化字符編碼操作。

查詢(xún)語(yǔ)句。不需要new一個(gè)查詢(xún)構(gòu)造器也不提供鏈?zhǔn)讲僮鞣绞剑菢訌?fù)雜且低效。

dba提供了以下的查詢(xún)輔助函數(shù)。

//讀一個(gè)值Dba::readOne($sql);//讀一行Dba::readRowAssoc($sql);//讀所有行Dba::readAllAssoc($sql);//讀所有行的第一列Dba::readAllOne($sql);//在實(shí)際業(yè)務(wù)場(chǎng)景中,經(jīng)常會(huì)有分頁(yè)讀取部分?jǐn)?shù)據(jù)的情況。//只要一個(gè)函數(shù)即可返回指定頁(yè)碼的數(shù)據(jù)內(nèi)容和數(shù)據(jù)總條數(shù)Dba::readCountAndLimit($sql, $page, $limit);

ps:以上部分函數(shù)可以提供一個(gè)map函數(shù)對(duì)返回?cái)?shù)組的每一行進(jìn)行加工處理。

寫(xiě)語(yǔ)句。為什么要區(qū)分read和write呢,顯然可以擴(kuò)展做到控制讀寫(xiě)分離,雙寫(xiě)等功能。

在有各種云數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)中間件的今天,在數(shù)據(jù)庫(kù)層實(shí)現(xiàn)是更好的選擇。

Dba::write($sql);/* 直接插入或更新kv形式的array數(shù)組會(huì)自動(dòng)對(duì)value進(jìn)行轉(zhuǎn)義,也支持array類(lèi)型的值。如果自己寫(xiě)sql語(yǔ)句要注意使用addslashes或mysql_real_escape_string來(lái)保證安全*/Dba::insert($table, $insert); Dba::update($table, $update, $where);/*對(duì)批量插入數(shù)據(jù)有更高的效率當(dāng)然過(guò)多的行數(shù)應(yīng)該用array_chunk來(lái)分批插入。*/Dba::insertS($table, $inserts);

2. 事務(wù)

使用pdo支持事務(wù)

Dba::beginTransaction();Dba::commit();Dba::rollBack();


3. 長(zhǎng)時(shí)間運(yùn)行

在一些需要長(zhǎng)時(shí)間運(yùn)行的場(chǎng)景如swoole服務(wù),后臺(tái)worker等,可能會(huì)出現(xiàn)數(shù)據(jù)庫(kù)連接超時(shí)的情況。

當(dāng)發(fā)現(xiàn)數(shù)據(jù)庫(kù)連接超時(shí),dba將會(huì)自動(dòng)嘗試重連。

以上內(nèi)容是小編給大家介紹的PHP框架系列文章(6)mysql數(shù)據(jù)庫(kù)方法,希望對(duì)大家有所幫助!



注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到PHP教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 正蓝旗| 武宣县| 宜兰县| 洛扎县| 宜昌市| 嘉兴市| 密云县| 遂川县| 商洛市| 鄂托克旗| 凤城市| 长宁区| 东海县| 织金县| 江孜县| 曲沃县| 吉首市| 清镇市| 普宁市| 滕州市| 土默特右旗| 柘城县| 紫阳县| 青河县| 巴彦县| 云南省| 千阳县| 高台县| 江城| 抚宁县| 含山县| 虎林市| 凌源市| 琼结县| 讷河市| 汉源县| 元朗区| 介休市| 建平县| 托克逊县| 霍邱县|