| 驅(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)常需要對查詢的語句進(jìn)行重新定義,這就需要修改針對查詢的selectSql屬性。該屬性定義了當(dāng)前數(shù)據(jù)庫驅(qū)動的查詢表達(dá)式,默認(rèn)的定義是:
'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ū)動需要和特性進(jìn)行添加,例如,有些數(shù)據(jù)庫的特殊性,需要覆蓋父類Db類中的解析和過濾方法,包括:
| 方法名 | 說明 |
|---|---|
| parseKey | 數(shù)據(jù)庫字段名解析 |
| parseValue | 數(shù)據(jù)庫字段值解析 |
| parseSet | 數(shù)據(jù)庫set分析 |
| parseLock | 數(shù)據(jù)庫鎖機(jī)制 |
定義了驅(qū)動擴(kuò)展后,需要使用的時候,設(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)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
標(biāo)簽:南通 武漢 河南 通遼 隴南 唐山 平頂山 黃山
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Thinkphp 框架擴(kuò)展之?dāng)?shù)據(jù)庫驅(qū)動常用方法小結(jié)》,本文關(guān)鍵詞 Thinkphp,框架,擴(kuò)展,之,數(shù)據(jù)庫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。