thinkphp5 数据库操作链式操作方法

$list = Db::name('tp')->where('tel',13126)->field('id,name')->order('id','desc')->limit(10)->select();
 上面写起来太乱,建议代码中写成
		$list = Db::name('tp')
				->where('tel',13126)
				->field('id,name')
				->order('id','desc')
				->limit(10)
				->select();
 这样写比较清楚明了
注:链式操作的方法调用顺序没有先后

上面的语句在原先里面是
SELECT 'id','name' FROM 'dede_tp' WHERE 'tel'= 13126 ORDER BY 'id' desc LIMIT 10
看链式后
Db::name('tp')->where('tel',13126)->field('id,name')->order('id','desc')->limit(10)->select();

其实从长度上看并没有变少,所以链式我倒是认为更适合我这种新手,精通原生的用原生更方便。

系统支持的链式操作方法有:
连贯操作 作用 支持的参数类型
where* 用于AND查询 字符串、数组和对象
whereOr* 用于OR查询 字符串、数组和对象
wheretime* 用于时间日期的快捷查询 字符串
table 用于定义要操作的数据表名称 字符串和数组
alias 用于给当前数据表定义别名 字符串
field* 用于定义要查询的字段(支持字段排除) 字符串和数组
order* 用于对结果排序 字符串和数组
limit 用于限制查询结果数量 字符串和数字
page 用于查询分页(内部会转换成limit) 字符串和数字
group 用于对查询的group支持 字符串
having 用于对查询的having支持 字符串
join* 用于对查询的join支持 字符串和数组
union* 用于对查询的union支持 字符串、数组和对象
view* 用于视图查询 字符串、数组
distinct 用于查询的distinct支持 布尔值
lock 用于数据库的锁机制 布尔值
cache 用于查询缓存 支持多个参数
relation* 用于关联查询 字符串
with* 用于关联预载入 字符串、数组
bind* 用于数据绑定操作 数组或多个参数
comment 用于SQL注释 字符串
force 用于数据集的强制索引 字符串
master 用于设置主服务器读取数据 布尔值
strict 用于设置是否严格检测字段名是否存在 布尔值
sequence 用于设置Pgsql的自增序列名 字符串
failException 用于设置没有查询到数据是否抛出异常 布尔值
partition 用于设置分表信息 数组 字符串

所有的连贯操作都返回当前的模型实例对象(this),其中带*标识的表示支持多次调用。

评论

大侠名号:   验证暗号: 点击我更换图片

修远兮

在这里记录每一点自己需要的知识

添加创始人微信,一起交流心得

推荐文章RECOMMEND