无论是更新一条或多条数据,先要对更新情况进行分类:
1.只更新一条数据
$where = 1;
$name = Jack;
$db->where('id',$where)->update(['name',$name]);
2.更新多条数据,更新条件相同
$where = $valid;
$name = Jack;
$db->where('valid',$where)->update(['name',$name]);
3.更新多条数据,更新条件不同
数据表如图。
(1)若要同时更新'key'字段数值为'2','3','4'的数据,要如何操作呢?
$db->where('key','>=',2)->where('key','<=',4)->update(['name',Rose]);
(2)若要同时更新'key'字段数值为'1','5'的数据,要如何操作呢?
$db->where('key','in',[1,5])->update(['name',Rose]);
(3)假使数据表数据量巨大,若要同时更新'key'值为1,3,7,8......的数据,要如何操作呢?
$data = array([1]=>Rose,[3]=>Rose,[7]=>Jack,[8]=>Jack......);
foreach($data as $k=>$v){
$db->where('key',$k)->update(['name',$v]);
}