原生查询

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