新增信息

  1. 使用insert()方法可以向数据表添加一条数据:

    1. public function insert(){
    2. $data = [
    3. 'username' =>'辉夜',
    4. 'password' =>'123',
    5. 'gender' =>'女',
    6. 'email' =>'huiye@163.com',
    7. 'price' =>90,
    8. 'datails' =>'123',
    9. 'create_time' =>date('Y-m-d H:i:s')
    10. ];
    11. Db::name('user')->insert($data);
    12. }
  2. 如果新增成功,insert()方法会返回一个1值;

    1. $insert = Db::name('user')->insert($data);
    2. return $insert;
  3. 你可以使用data()方法来设置添加的数据数组;

    1. Db::name('user')data($data)->insert();
  4. 如果你添加一个不存在的数据,会抛出一个异常Exception;

  5. 如果采用的是mysql数据库,支持REPLACE写入;
  6. 使用insertGetId()方法,可以在新增成功后返回当前数据ID;

    1. Db::name('user')->insertGetId($data);
  7. 使用insertAll()方法,可以批量新增数据,但要保持数组结构一致;

    1. public function insertAll(){
    2. $dataAll =[
    3. [
    4. 'username' =>'辉夜',
    5. 'password' =>'123',
    6. 'gender' =>'女',
    7. 'email' =>'huiye@163.com',
    8. 'price' =>90,
    9. 'datails' =>'123',
    10. 'create_time' =>date('Y-m-d H:i:s')
    11. ],
    12. [
    13. 'username' =>'辉夜',
    14. 'password' =>'123',
    15. 'gender' =>'女',
    16. 'email' =>'huiye@163.com',
    17. 'price' =>90,
    18. 'datails' =>'123',
    19. 'create_time' =>date('Y-m-d H:i:s')
    20. ]
    21. ];
    22. Db::name('user')->insertAll($data);
    23. }
  8. 批量新增也支持data()方法,和单独新增类似;

    1. Db::name('user')->($data)->insertAll();
  9. 批量新增也支持reaplce写入,和单独新增类似;

    1. Db::name('user')->insertAll($data, true);

    修改数据

  10. 使用update()方法来修改数据,修改成功返回影响行数,没有修改返回e;

    1. $data=[
    2. 'username' =>'李白'
    3. ];
    4. $update = Db::name('user')->where('id', 38)->update ($data);
    5. return $update;
    1. public function updata(){
    2. $data=[
    3. 'username' =>'李白'
    4. ];
    5. Db::name('user')->where('id',1)->update($data);
    6. }
  11. 或者使用data()方法传入要修改的数组,如果两边都传入会合并;

    1. Db::name('user')->where('id',1)->data($data)->update(['password'=>'456']);
  12. 如果修改数组中包含主键,那么可以直接修改;

    1. public function updata(){
    2. $data=[
    3. 'username' =>'李白',
    4. 'id' =>38
    5. ];
    6. Db::name('user')->update($data);
    7. }
  13. 使用inc()方法可以对字段增值,dec()方法可以对字段减值;

    1. public function updata(){
    2. $data=[
    3. 'username' =>'李白',
    4. ];
    5. Db::name('user')->dec('price',3)->update($data);
    6. Db::name('user')->inc('price',)->update($data);
    7. }
  14. 增值和减值如果同时对一个字段操作,前面一个会失效;

  15. 使用exp()方法可以在字段中使用mysql函数;

    1. Db::name('user')->exp('email','UPPER(email)')->update($data);
  16. 使用setField()方法可以更新一个字段值;

    1. Db::name('user')->where('id',38)->setField('username','辉夜');
  17. 增值setInc()和减值setDec()也有简单的做法,方便更新一个字段值;

    1. Db::name('user')->where('id',38)->setInc('username','辉夜');
  18. 增值和减值如果不指定第二个参数,则步长为1;

    删除数据

  19. 极简删除可以根据主键直接删除,删除成功返回影响行数,否则0;

    1. Db::name('user')->delete(11);
  20. 根据主键,还可以删除多条记录;

    1. Db::name('user')->delete([48,49,50]);
  21. 正常情况下,通过where()方法来删除;

    1. Db::name('user')->where('id',18)->delete([48,49,50]);
  22. 通过true参数删除数据表所有数据,我还没测试,大家自行测试下;

    1. Db::name('user')->delete(true);