插入:
单条:
$data = ['foo' => 'bar', 'bar' => 'foo'];
data = [
['foo' => 'bar', 'bar' => 'foo'],
['foo' => 'bar1', 'bar' => 'foo1'],
['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->insertAll($data);
ps: insert 方法添加数据成功返回添加成功的条数,insert 正常情况返回 1 (可做成功的判断)
更新:
$is_update = Db::table('think_user')->where('id', 1)->update(['name' => 'thinkphp']);
$is_update !== false && return true;
ps:update 方法返回影响数据的条数,没修改任何数据返回 0
删除:
根据主键删除
Db::table('think_user')->delete(1);
Db::table('think_user')->delete([1,2,3]);
条件删除
Db::table('think_user')->where('id',1)->delete();
Db::table('think_user')->where('id','<',10)->delete();
delete 方法返回影响数据的条数,没有删除返回 0
查询:
tp5查询构造器(DB类)
查一条记录:
where();
Db::table('think_user')->where('id','='1)->find(); // 数组法 where(['id'=>'1']);
Db::table('think_user')->where('id','!=',1)->select();
whereOr();
配模糊查询
Db::table('think_user')
->where('name','like','%thinkphp')
->whereOr('title','like','%thinkphp')
->find();
对多个字段用相同的字符串查询
Db::table('think_user')
where('title','null'); 查询title 为null的记录
if(condition1) {
$user->where();
}
if(condition2){
$user->where();
}
$user ->select();
ps: 0,find和select方法之前返回的都是Query对象
1,find和select方法返回的都是数组
2,未设置表前缀用table()反之用name();
查询构造器之链式操作
$user = Db::table('think_user')->where() ->where() ->order() ->select();
单条:
$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::table('think_user')->insert($data);
$userId = Db::name('user')->getLastInsID();//如果是id 是自增长可以获取最后id
多条:data = [
['foo' => 'bar', 'bar' => 'foo'],
['foo' => 'bar1', 'bar' => 'foo1'],
['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->insertAll($data);
ps: insert 方法添加数据成功返回添加成功的条数,insert 正常情况返回 1 (可做成功的判断)
更新:
$is_update = Db::table('think_user')->where('id', 1)->update(['name' => 'thinkphp']);
$is_update !== false && return true;
ps:update 方法返回影响数据的条数,没修改任何数据返回 0
删除:
根据主键删除
Db::table('think_user')->delete(1);
Db::table('think_user')->delete([1,2,3]);
条件删除
Db::table('think_user')->where('id',1)->delete();
Db::table('think_user')->where('id','<',10)->delete();
delete 方法返回影响数据的条数,没有删除返回 0
查询:
tp5查询构造器(DB类)
查一条记录:
where();
Db::table('think_user')->where('id','='1)->find(); // 数组法 where(['id'=>'1']);
Db::table('think_user')->where('id','!=',1)->select();
whereOr();
配模糊查询
Db::table('think_user')
->where('name','like','%thinkphp')
->whereOr('title','like','%thinkphp')
->find();
对多个字段用相同的字符串查询
Db::table('think_user')
->where('name|title','like','%thinkphp') // | & 可互换
->find();
where() 方法的查询表达式
比较: = <> > < >= <=
between
where('id','between','1,8');
in
where('id','not in','1,5,8'); 查询id为1或5或8的记录
nullwhere('title','null'); 查询title 为null的记录
where('name','not null');查询name not null的记录
查询构造器之根据条件构造(可用于开发多字段搜索);
$user = Db::table('think_user');
if(condition1) {
$user->where();
}
if(condition2){
$user->where();
}
$user ->select();
ps: 0,find和select方法之前返回的都是Query对象
1,find和select方法返回的都是数组
2,未设置表前缀用table()反之用name();
查询构造器之链式操作
$user = Db::table('think_user')->where()
if(condition1) {
$user->where();
}
if(condition2){
$user->where();
}
$user ->select();
ps: 0,find和select方法之前返回的都是Query对象
1,find和select方法返回的都是数组
2,未设置表前缀用table()反之用name();
查询构造器之链式操作
$user = Db::table('think_user')->where() ->where() ->order() ->select();