原生查询
Db
类支持原生SQL
查询操作,主要包括下面两个方法:
query
方法
query
方法用于执行SQL
查询操作,如果数据非法或者查询错误则返回false,否则返回查询结果数据集(同select
方法)。
使用示例:
Db::query("select
*
from
think_user
where
status=1
");
如果你当前采用了分布式数据库,并且设置了读写分离的话,query方法始终是在读服务器执行,因此query方法对应的都是读操作,而不管你的SQL语句是什么。
execute
方法
execute用于更新和写入数据的sql操作,如果数据非法或者查询错误则返回false ,否则返回影响的记录数。
使用示例:
Db::execute("update
think_user
set
name='thinkphp'
where
status=1
");
如果你当前采用了分布式数据库,并且设置了读写分离的话,execute方法始终是在写服务器执行,因此execute方法对应的都是写操作,而不管你的SQL语句是什么。
参数绑定
支持在原生查询的时候使用参数绑定,包括问号占位符或者命名占位符,例如:
Db::query("select
*
from
think_user
where
id=?
AND
status=?",[8,1]); // 命名绑定 Db::execute("
update
think_user
set
name=:name
where
status=:status
",['name'=>'thinkphp','status'=>1]);
文档最后更新时间:2018-04-26 09:53:51
未解决你的问题?请到「问答社区」反馈你遇到的问题