數據修改
使用 update()方法來修改數據,修改成功返回影響行數,沒有修改返回 0
public function index(){$data = ['username' => '孫悟空1',];return Db::name('user')->where('id',11)->update($data);}
如果修改數據包含了主鍵信息,比如 id,那么可以省略掉 where 條件,上面的代碼可以修改為如下代碼
public function index()
{$data = ['id' => 11,'username' => '孫悟空1',];return Db::name('user')->update($data);
}
如果想讓一些字段修改時執行 SQL 函數操作,可以使用 exp()方法實現
public function index()
{return Db::name('user')->where('id', 304)->exp('email', 'UPPER(email)')->update();
}
如果要自增/自減某個字段,可以使用 inc/dec 方法,并支持自定義步長
public function index()
{return Db::name('user')->where('id', 232)->inc('price')->dec('status', 2)->update();
}
一個更加簡單粗暴靈活的方式,使用Db::raw()方法實現自增自減和SQL函數
Db::name('user')->where('id', 1)
->update([
'email' => Db::raw('UPPER(email)'),
'price' => Db::raw('price + 1'),
'status' => Db::raw('status - 2')
]);
數據刪除
極簡刪除可以根據主鍵直接刪除,刪除成功返回影響行數,否則 0;
public function index(){$effortRows = Db::name('user')->delete(309);return $effortRows;}
根據主鍵,還可以刪除多條記錄;
public function index(){$effortRows = Db::name('user')->delete([306,307,308]);return $effortRows;}
正常情況下,通過 where()方法來刪除
public function index(){$effortRows = Db::name('user')->where('id',305)->delete();return $effortRows;}
通過 true 參數刪除數據表所有數據
public function index()
{$effortRows = Db::name('user')->delete(true);return $effortRows;
}