主頁 > 知識庫 > Thinkphp 框架擴展之數(shù)據(jù)庫驅(qū)動常用方法小結(jié)

Thinkphp 框架擴展之數(shù)據(jù)庫驅(qū)動常用方法小結(jié)

熱門標簽:邢臺400電話辦理 南京3D地圖標注 辦理400電話哪家好點 咸陽電銷 南寧電話外呼系統(tǒng)線路 重慶外呼電銷系統(tǒng)多少錢 濟源百應(yīng)電銷機器人聯(lián)系方式 嘟嘟云外呼系統(tǒng) 正規(guī)電銷機器人系統(tǒng)

本文實例講述了Thinkphp 框架擴展之數(shù)據(jù)庫驅(qū)動常用方法。分享給大家供大家參考,具體如下:

數(shù)據(jù)庫驅(qū)動

默認的數(shù)據(jù)庫驅(qū)動位于Think\Db\Driver命名空間下面,驅(qū)動類必須繼承Think\Db類,每個數(shù)據(jù)庫驅(qū)動必須要實現(xiàn)的接口方法包括(具體參數(shù)可以參考現(xiàn)有的數(shù)據(jù)庫驅(qū)動類庫):

驅(qū)動方法 方法說明
架構(gòu)方法 __construct($config='')
數(shù)據(jù)庫連接方法 connect($config='',$linkNum=0,$force=false)
釋放查詢方法 free()
查詢操作方法 query($str)
執(zhí)行操作方法 execute($str)
開啟事務(wù)方法 startTrans()
事務(wù)提交方法 commit()
事務(wù)回滾方法 rollback()
獲取查詢數(shù)據(jù)方法 getAll()
獲取字段信息方法 getFields($tableName)
獲取數(shù)據(jù)庫的表 getTables($dbName='')
關(guān)閉數(shù)據(jù)庫方法 close()
獲取錯誤信息方法 error()
SQL安全過濾方法 escapeString($str)

數(shù)據(jù)庫的CURD接口方法(通常這些方法無需重新定義)

方法 說明
寫入 insert($data,$options=array(),$replace=false)
更新 update($data,$options)
刪除 delete($options=array())
查詢 select($options=array())

介于不同數(shù)據(jù)庫的查詢方法存在區(qū)別,所以經(jīng)常需要對查詢的語句進行重新定義,這就需要修改針對查詢的selectSql屬性。該屬性定義了當前數(shù)據(jù)庫驅(qū)動的查詢表達式,默認的定義是:

'SELECT%DISTINCT% %FIELD% FROM %TABLE%%JOIN%%WHERE%%GROUP%%HAVING%%ORDER%%LIMIT% %UNION%'

驅(qū)動可以更改或者刪除個別查詢定義,或者更改某個替換字符串的解析方法,這些方法包括:

方法名 說明 對應(yīng)
parseTable 數(shù)據(jù)庫表名解析 %TABLE%
parseWhere 數(shù)據(jù)庫查詢條件解析 %WHERE%
parseLimit 數(shù)據(jù)庫查詢Limit解析 %LIMIT%
parseJoin 數(shù)據(jù)庫JOIN查詢解析 %JOIN%
parseOrder 數(shù)據(jù)庫查詢排序解析 %ORDER%
parseGroup 數(shù)據(jù)庫group查詢解析 %GROUP%
parseHaving 數(shù)據(jù)庫having解析 %HAVING%
parseDistinct 數(shù)據(jù)庫distinct解析 %DISTINCT%
parseUnion 數(shù)據(jù)庫union解析 %UNION%
parseField 數(shù)據(jù)庫字段解析 %FIELD%

驅(qū)動的其他方法根據(jù)自身驅(qū)動需要和特性進行添加,例如,有些數(shù)據(jù)庫的特殊性,需要覆蓋父類Db類中的解析和過濾方法,包括:

方法名 說明
parseKey 數(shù)據(jù)庫字段名解析
parseValue 數(shù)據(jù)庫字段值解析
parseSet 數(shù)據(jù)庫set分析
parseLock 數(shù)據(jù)庫鎖機制

定義了驅(qū)動擴展后,需要使用的時候,設(shè)置相應(yīng)的數(shù)據(jù)庫類型即可:

'DB_TYPE'=>'odbc', // 數(shù)據(jù)庫類型配置不區(qū)分大小寫

更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。

希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • Thinkphp 框架擴展之標簽庫驅(qū)動原理與用法分析
  • thinkPHP5.0框架整體架構(gòu)總覽【應(yīng)用,模塊,MVC,驅(qū)動,行為,命名空間等】
  • Thinkphp 框架擴展之應(yīng)用模式實現(xiàn)方法分析
  • Thinkphp 框架擴展之Widget擴展實現(xiàn)方法分析
  • Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法分析
  • Thinkphp 框架擴展之類庫擴展操作詳解
  • thinkphp框架類庫擴展操作示例
  • ThinkPHP行為擴展Behavior應(yīng)用實例詳解
  • ThinkPHP應(yīng)用模式擴展詳解
  • ThinkPHP的Widget擴展實例
  • Thinkphp 框架擴展之驅(qū)動擴展實例分析

標簽:南通 武漢 河南 通遼 隴南 唐山 平頂山 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Thinkphp 框架擴展之數(shù)據(jù)庫驅(qū)動常用方法小結(jié)》,本文關(guān)鍵詞  Thinkphp,框架,擴展,之,數(shù)據(jù)庫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Thinkphp 框架擴展之數(shù)據(jù)庫驅(qū)動常用方法小結(jié)》相關(guān)的同類信息!
  • 本頁收集關(guān)于Thinkphp 框架擴展之數(shù)據(jù)庫驅(qū)動常用方法小結(jié)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章