前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Thinkphp 框架扩展之数据库驱动常用方法小结

Thinkphp 框架扩展之数据库驱动常用方法小结

作者头像
砸漏
发布2020-11-02 15:38:52
9580
发布2020-11-02 15:38:52
举报
文章被收录于专栏:恩蓝脚本

本文实例讲述了Thinkphp 框架扩展之数据库驱动常用方法。分享给大家供大家参考,具体如下:

数据库驱动

默认的数据库驱动位于Think\Db\Driver命名空间下面,驱动类必须继承Think\Db类,每个数据库驱动必须要实现的接口方法包括(具体参数可以参考现有的数据库驱动类库):

驱动方法

方法说明

架构方法

__construct($config=”)

数据库连接方法

connect($config=”,$linkNum=0,$force=false)

释放查询方法

free()

查询操作方法

query($str)

执行操作方法

execute($str)

开启事务方法

startTrans()

事务提交方法

commit()

事务回滚方法

rollback()

获取查询数据方法

getAll()

获取字段信息方法

getFields($tableName)

获取数据库的表

getTables($dbName=”)

关闭数据库方法

close()

获取错误信息方法

error()

SQL安全过滤方法

escapeString($str)

数据库的CURD接口方法(通常这些方法无需重新定义)

方法

说明

写入

insert($data,$options=array(),$replace=false)

更新

update($data,$options)

删除

delete($options=array())

查询

select($options=array())

介于不同数据库的查询方法存在区别,所以经常需要对查询的语句进行重新定义,这就需要修改针对查询的selectSql属性。该属性定义了当前数据库驱动的查询表达式,默认的定义是:

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

驱动可以更改或者删除个别查询定义,或者更改某个替换字符串的解析方法,这些方法包括:

方法名

说明

对应

parseTable

数据库表名解析

%TABLE%

parseWhere

数据库查询条件解析

%WHERE%

parseLimit

数据库查询Limit解析

%LIMIT%

parseJoin

数据库JOIN查询解析

%JOIN%

parseOrder

数据库查询排序解析

%ORDER%

parseGroup

数据库group查询解析

%GROUP%

parseHaving

数据库having解析

%HAVING%

parseDistinct

数据库distinct解析

%DISTINCT%

parseUnion

数据库union解析

%UNION%

parseField

数据库字段解析

%FIELD%

驱动的其他方法根据自身驱动需要和特性进行添加,例如,有些数据库的特殊性,需要覆盖父类Db类中的解析和过滤方法,包括:

方法名

说明

parseKey

数据库字段名解析

parseValue

数据库字段值解析

parseSet

数据库set分析

parseLock

数据库锁机制

定义了驱动扩展后,需要使用的时候,设置相应的数据库类型即可:

代码语言:javascript
复制
'DB_TYPE'= 'odbc', // 数据库类型配置不区分大小写

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据库驱动
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档