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 | 数据库锁机制 | 
定义了驱动扩展后,需要使用的时候,设置相应的数据库类型即可:
- 'DB_TYPE'=>'odbc', // 数据库类型配置不区分大小写
thinkphp 数据库缓存的更多相关文章
- ThinkPHP的缓存技术
		原文:ThinkPHP的缓存技术 如果没有缓存的网站是百万级或者千万级的访问量,会给数据库或者服务器造成很大的压力,通过缓存,大幅减少服务器和数据库的负荷.假如我们 把读取数据的过程分为三个层,第一个 ... 
- Thinkphp关闭缓存方法总结(转)
		ThinkPHP在数据缓存方面包括文件方式.共享内存方式和数据库方式在内的多种方式进行缓存,通过插件方式还可以增加以后需要的缓存类,让应用开发可以选择更加适合自己的缓存方式,从而有效地提高应用执行效率 ... 
- ASP.NET缓存全解析6:数据库缓存依赖  转自网络原文作者李天平
		更多的时候,我们的服务器性能损耗还是在查询数据库的时候,所以对数据库的缓存还是显得特别重要,上面几种方式都可以实现部分数据缓存功能.但问题是我们的数据有时候是在变化的,这样用户可能在缓存期间查询的数据 ... 
- Apache Ignite——新一代数据库缓存系统
		[编者按]飞速增长的数据需要大量存储,对这些数据的管理也不是一件容易的事.但相比于存储和管理,如何处理数据才是开发人员真正的挑战.对于TB级别数据的存储和处理通常会让开发人员陷入速度.可扩展性和开销的 ... 
- (转)ASP.NET缓存全解析6:数据库缓存依赖
		ASP.NET缓存全解析文章索引 ASP.NET缓存全解析1:缓存的概述 ASP.NET缓存全解析2:页面输出缓存 ASP.NET缓存全解析3:页面局部缓存 ASP.NET缓存全解析4:应用程序数据缓 ... 
- 网站优化指南之数据库缓存、CDN与云存储
		1 数据库缓存. 常见的做法是用内存做cache,把数据库里的内容提前取出读到内存里,用户再请求时,就不直接读数据库,而是读内存里的数据,从而缓解了数据库的压力. 过去比较常用的缓存软件是memcac ... 
- Java数据库缓存思路
		为什么要用缓存?如果问这个问题说明你还是新手,数据库吞吐量毕竟有限,每秒读写5000次了不起了,如果不用缓存,假设一个页面有100个数据库操作,50个用户并发数据库就歇菜,这样最多能支撑的pv也就50 ... 
- 该如何关闭thinkphp的缓存呢?有下面几种方法可参考:
		该如何关闭thinkphp的缓存呢?有下面几种方法可参考: (1)在配置文件中关闭缓存 在你的配置文件config.php文件中加上如下两句: 复制代码代码如下: 'TMPL_CACHE_ON' ... 
- Asp.net数据库缓存依赖
		Asp.net数据库缓存依赖 更多的时候,我们的服务器性能损耗还是在查询数据库的时候,所以对数据库的缓存还是显得特别重要,上面几种方式都可以实现部分数据缓存功能.但问题是我们的数据有时候是在变化的,这 ... 
随机推荐
- Largest Submatrix 3
			Largest Submatrix 3 给出一个\(n\times m\)的网格图,第i行第j列上的格子有数字\(a[i][j]\),显然,你可以从中找到一个子矩阵,保证子矩阵中的数字互不相同,求子矩 ... 
- CSP 2019 模板整合
			qwq以下都为9.24后写的模板 namespace IO{ const int S = 1 << 20; char I[S + 1], *Is = I, *It = I, O[S + 1 ... 
- 08-03-re-模块
			一组特殊符号组成的表达式,用于描述某种规则.该应用场景生活中随处可见.  例如:让有志青年过上体面的生活,这里面就由规则,即有志青年. 正则表达式的作用,以及使用场景  1.用于从字符串中匹配满足 ... 
- 电子商务B2B的发展趋势
			B2B的发展趋势 尽管B2B市场发展势头良好,但B2B市场还是存在发育不成熟的一面.这种不成熟表现在B2B交易的许多先天性交易优势,比如在线价格协商和在线协作等还没有充分发挥出来. 报告指出,到200 ... 
- TESTNG听录音笔记
			1. 是什么:有了它可以管理测试用例,做数据驱动,多线程模式下case的鲍旭类型 2. 如何生成testng的xml文件 -- based on Eclipse Eclipse里装上testn插件,指 ... 
- 【UR #2】跳蚤公路
			[UR #2]跳蚤公路 参照yjc方法.也就是地铁环线那个题. 求每个点不在负环内的x的取值范围.然后所有1到j能到i的j的范围取交.得到答案. 每个边形如kx+b的直线,每个环也是 每个点不在负环内 ... 
- [NOIP]模拟17 题解
			A.入阵曲 部分分很肥,正解写得常数稍大就会和暴力一个分,考试的时候写什么自己考虑.(滑稽 部分分的循环边界手抖写错了-25 (原本暴力分中的10分都没了啊啊啊) 没写挂的话应该有75,其实就是二维前 ... 
- Tomcat服务器配置参考
			Coyote HTTP/1.1 Connector 概述 Coyote HTTP/1.1 Connector元素是一个支持HTTP/1.1协议的Connector组件.它使Catalina除了能够执行 ... 
- Java数据结构----集合
			Java的集合可以分为两类, 第一类是以数组为代表,这类集合可以描述线性表类型的数据结构,以Collection为基类,其中自己用过或者了解的有 实现List接口的类:LinkedList,Array ... 
- [转] JPA 2.0 with EclipseLink - 教程
			原文: http://www.vogella.com/articles/JavaPersistenceAPI/article.html Lars Vogel Version 2.2 Copyright ... 
