tp5数据查询方式
thinkPHP5中的Db::name 和 dB::table 以及 db(‘’) 的区别
Db::name()
如果数据库中的表统一了表前缀,在application/database.php中的也写明prefix => ‘前缀_’ 就可以使用
1 | Db::name('user')->where(['id'=>1])->select(); |
Db::table()
使用这个必须指定完整的表名
1 | Db::tale('fa_user')->where(['id'=>1])->select(); |
db(‘’)
助手函数
1 | db('user')->where(['id'=>1])->select(); |
注意:该助手函数占用服务器资源
db(‘user’) 默认情况下,每次请求都会重新连接数据库,这样会占用服务器资源
方法1.如果不想每次都重连可以这样
1 | db("user",[],false) |
方法2.还可以直接改function,及则需要把
1 | function db($name = '', $config = [], $force = true) |
ThinkPHP中query()和execute()区别
query()执行的是查询(select)的SQL语句。
execute()执行的是插入(insert)和修改(update)的SQL语句。execute()方法将返回影响的记录数。
如果在TP中使用query()来执行插入语句的话也会执行,而且也能插入成功,但是会报错。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小Q同学!
评论