类拆分为Connection(连接器)/Query(查询器)/Builder(SQL生成器)
1.配置数据库连接信息
2.查询构造器
(1)基本查询
添加一条数据 $data = ['foo' => 'bar', 'bar' => 'foo']; Db::table('think_user')->insert($data);
insert 方法添加数据成功返回添加成功的条数,insert 正常情况返回 1
添加多条数据
$data = [ ['foo' => 'bar', 'bar' => 'foo'], ['foo' => 'bar1', 'bar' => 'foo1'], ['foo' => 'bar2', 'bar' => 'foo2'] ]; Db::name('user')->insertAll($data);
insertAll 方法添加数据成功返回添加成功的条数
1.查询一条数据
Db::table('think_user')->where('id',1)->find();
2.查询数据集 Db::table('think_user')->where('status',1)->select();
// table方法必须指定完整的数据表名
在find 和select 方法之前可以使用所有的链式操作方法。 ind和select方法返回的都是数组
如果设置了数据表前缀参数的话,可以使用 Db::name('user')->where('id',1)->find(); Db::name('user')->where('status',1)->select();
3.查询某个字段的值可以用 // 返回某个字段的值 Db::table('think_user')->where('id',1)->value('name');
4.查询某一列的值可以用 // 返回数组 Db::table('think_user')->where('status',1)->column('name'); // 指定索引 Db::table('think_user')->where('status',1)->column('name','id');
添加数据 1.添加一条数据 $data = ['foo' => 'bar', 'bar' => 'foo']; Db::table('think_user')->insert($data); insert 方法添加数据成功返回添加成功的条数,insert 正常情况返回 1
2.添加数据后如果需要返回新增数据的自增主键,可以使用insertGetId 方法 Db::name('user')->insertGetId($data);
2.添加多条数据 $data = [ ['foo' => 'bar', 'bar' => 'foo'], ['foo' => 'bar1', 'bar' => 'foo1'], ['foo' => 'bar2', 'bar' => 'foo2'] ]; Db::name('user')->insertAll($data); insertAll 方法添加数据成功返回添加成功的条数
更新数据 1. Db::table('think_user') ->where('id', 1) ->update(['name' => 'thinkphp']);
update 方法返回影响数据的条数,没修改任何数据返回 0
如果要更新的数据需要使用SQL 函数或者其它字段,可以使用下面的方式: Db::table('think_user') ->where('id', 1) ->update([ 'login_time' => ['exp','now()'], 'login_times' => ['exp','login_times+1'], ]);
更新某个字段的值: Db::table('think_user') ->where('id',1) ->setField('name', 'thinkphp');
删除数据 // 条件删除 Db::table('think_user')->where('id',1)->delete(); Db::table('think_user')->where('id','<',10)->delete();