广告:宝塔Linux面板高效运维的服务器管理软件 点击【 https://www.bt.cn/p/uNLv1L 】立即购买
一个标准的网站一定离不开数据库的操作,在本套课程中我和你一起来揭开ThinkPHP5 数据操作的神秘面纱,和你一起愉快的使用 ThinkPHP5 操作数据库,让数据库操作变的更愉悦。
基本使用查询操作
Db::query('select * from think_user where id=?',[8]);登录后复制
写入操作
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);登录后复制查询构造器
查询数据
find 返回一条记录,返回的结果是一个一维数组 如果结果不存在,返回NULL
Db::table('think_user')->where('id',1)->find();登录后复制
select 返回所有记录,返回的结果是一个二维数组 如果结果不存在,返回一个空数组
Db::table('think_user')->where('status',1)->select();登录后复制助手函数
系统提供了一个db助手函数,可以更方便的查询:
db('user')->where('id',1)->find();db('user')->where('status',1)->select();登录后复制
注意:使用db助手函数默认每次都会重新连接数据库,而使用Db::name或者Db::table方法的话都是单例的。db函数如果需要采用相同的链接,可以传入第三个参数,例如
db('user',[],false)->where('id',1)->find();db('user',[],false)->where('status',1)->select();登录后复制
添加数据
使用 Db 类的 insert 方法向数据库提交数据
$data = ['foo' => 'bar', 'bar' => 'foo'];Db::table('think_user')->insert($data);登录后复制
添加多条数据
添加多条数据直接向 Db 类的 insertAll 方法传入需要添加的数据即可
$data = [ ['foo' => 'bar', 'bar' => 'foo'], ['foo' => 'bar1', 'bar' => 'foo1'], ['foo' => 'bar2', 'bar' => 'foo2']];Db::name('user')->insertAll($data);登录后复制
insertAll 方法添加数据成功返回添加成功的条数
助手函数
// 添加单条数据db('user')->insert($data);// 添加多条数据db('user')->insertAll($list);登录后复制更新数据
update 方法返回影响数据的条数,没修改任何数据返回 0
Db::table('think_user')->where('id', 1)->update(['name' => 'thinkphp']);登录后复制
更新某个字段的值: setField 方法返回影响数据的条数,没修改任何数据字段返回 0
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);0登录后复制
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);1登录后复制
延迟更新
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);2登录后复制删除数据
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);3登录后复制条件查询方法
where
可以使用where方法进行AND条件查询:
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);4登录后复制
whereOr方法
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);5登录后复制
混合查询
where方法和whereOr方法在复杂的查询条件中经常需要配合一起混合使用,下面举个例子:
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);6登录后复制查询表达式
查询表达式支持大部分的SQL查询语法,也是ThinkPHP查询语言的精髓,查询表达式的使用格式:
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);7登录后复制
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);8登录后复制
【相关教程推荐:thinkphp框架】
以上就是聊聊Thinkphp 5.0 对数据库的操作(关键代码)的详细内容,更多请关注9543建站博客其它相关文章!
发表评论