tp5数据查询方式
thinkPHP5中的Db::name 和 dB::table 以及 db(‘’) 的区别
Db::name()
如果数据库中的表统一了表前缀,在application/database.php中的也写明prefix => ‘前缀_’ 就可以使用1
2Db::name('user')->where(['id'=>1])->select();
//数据库中的表名为 fa_user
Db::table()
使用这个必须指定完整的表名1
2Db::tale('fa_user')->where(['id'=>1])->select();
//数据库中的表名为 fa_user
db(‘’)
助手函数1
2db('user')->where(['id'=>1])->select();
//数据库中的表名为 fa_user
注意:该助手函数占用服务器资源
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 许可协议。转载请注明来自 Heyiki's Blog!
评论
TwikooLivere