ThinkPHP数据库常用操作
用法:
Db::table('table_name')->where('id',1)->find(); //一般用法 Db::name('table_name')->where('id',1)->find(); //设置了表前缀用 db('table_name')->where('id',1)->find(); //使用函数
查询数据:
Db::table('table_name')->where('id',1)->find(); //查询一条数据 Db::table('table_name')->where('id',1)->findOrEmpty(); //查询一条数据没有则返回空数组 Db::table('table_name')->where('id',1)->select(); //查询数据 Db::table('table_name')->where('id',1)->value('name'); //查询某个字段的值 Db::table('table_name')->where('id',1)->column('name'); //查询某一列的值并返回一维数组 Db::table('table_name')->where('id',1)->column('name','id'); //查询某一列的值并指定id字段为数组索引 Db::table('table_name')->where('id',1)->column('*','id'); //查询所有值并指定id字段为数组索引
游标查询:
$cursor = Db::table('table_name')->where('status',1)->cursor(); foreach($cursor as $user){ echo $user['name']; }
查询条件:
Db::name('tbname')->where('id', 'in',[1,5,8])->whereOr('status','<',3)->select(); //查询或 Db::name('tbname')->where('id', 'in',[1,5,8])->where('status','<',3)->select(); //查询和
链式操作:
Db::name('tbname1')->alias('a')->join('tbname2 b','b.id=a.id')->select(); //连接表 Db::name('tbname')->where('id',1)->field('id,title,content')->order('id','desc')->group('status')->limit(10)->select(); //选取字段 Db::name('tbname')->where('status',1)->limit(25)->page(3)->select(); //分页
添加数据:
Db::name('tbname')->insert($data); //普通写入 Db::name('tbname')->insertAll($data); //写入多条数据 Db::name('tbname')->insert($data, true); //replace写入(mysql) Db::name('tbname')->insertAll($data, true); $id = Db::name('tbname')->insertGetId($data); //写入数据并返回新增的主键值
更新数据:
Db::name('tbname')->where('id',1)->update($data); //普通更新 Db::name('tbname')->where('id',1)->setInc('num',2) //+2 ->setDec('num',3) //-3 Db::name('tbname')->where('id',1)->setField('name','thinkphp'); //更新字段值
删除数据:
Db::name('tbname')->delete(1); //根据主键删除 Db::name('tbname')->delete([1,2,3]); Db::name('tbname')->where('id','<',10)->delete(); //普通删除