增删改查

一.新增数据

1.使用 insert()方法可以向数据表添加一条数据;
如果你添加一个不存在的数据,会抛出一个异常 Exception;
    public function getModel(){
        //定义数组数据文件
        $date=[
            "bname" =>  "杜伟"
        ];

        //查询后返回的对象赋值给$user 避免下次再创建静态对象节省资源
        $user=Db::table('user');
        //执行新增语句
        $user->insert($date);
        //这条语句同等上面的两条
       // Db::table('user')->insert($date);
        return json($user->find());
    }
2.如果新增成功,insert()方法会返回一个 1 值;
    public function getModel(){
        $data=[
            "bname"  =>  "王玥"
        ];
       $rw=article::table('user')->insert($data);
       if($rw){
           return "新增成功!";
       }
    }
3.你可以使用 data()方法来设置添加的数据数组;
Db::name('user')->data($data)->insert();
//$data 就是上边的数组,insert函数中就不需要填写了
6.使用 insertGetId()方法,可以在新增成功后返回当前数据 ID;
 
    public function getModel(){
        $data=[
            "bname"  =>  "海波"
        ];
        //使用insertGetId函数获取新增后的id列
      return Db::table('user')->insertGetId($data);
      
    }
7.使用 insertAll()方法,可以批量新增数据,但要保持数组结构一致;
    public function getModel(){
        $data=[
            //批量数据,使用数组分开
            ["bname"    =>  "王玥"],
            ["bname" =>  "海燕"]
        ];
        //使用insertAll函数 批量新增数据
       Db::table('user')->insertAll($data);
      return Db::getlastsql();
    }
8.批量新增也支持 data()方法,和单独新增类似;这里就不演示了

二.修改数据

1.使用 update()方法来修改数据,修改成功返回影响行数,没有修改返回 0;
    public function getModel(){
        $data=
            //批量数据,使用数组分开
            ["bname"    =>  "王玥"];
        
        //使用update函数 更新数据
       Db::table('user')->where('bid',2)->update($data);
      return Db::getlastsql();
    }

这样也是可以的

    public function getModel(){
        $data=
            //批量数据,使用数组分开
            ["bname"    =>  "王玥"];
        
        //使用update函数 更新数据
       Db::table('user')->where('bid',2)->update(["bname"   =>  "ff"]);
      return Db::getlastsql();
    }
2.或者使用 data()方法传入要修改的数组,如果两边都传入会合并;
Db::name('user')->where('id', 38)->data($data)->update(['password'=>'456']);
3.使用 setField()方法可以更新一个字段值;
Db::name('user')->where('id', 38)->setField('username', '辉夜');
 4.增值 setInc()和减值 setDec()也有简单的做法,方便更新一个字段值;
 
    public function getModel(){
        //使用setinc 更新单个字段值 最后的语句是
        //update set bid=bid+1 where bid=5
       Db::table('user')->where('bid',5)->setInc('bid');
      return Db::getlastsql();
    }

三.删除数据


1.极简删除可以根据主键直接删除,删除成功返回影响行数,否则 0;
Db::name('user')->delete(51);
2.根据主键,还可以删除多条记录;
Db::name('user')->delete([48,49,50]);
3.正常情况下,通过 where()方法来删除;
Db::name('user')->where('id', 47)->delete();
4.通过 true 参数删除数据表所有数据,我还没测试,大家自行测试下;
Db::name('user')->delete(true);

 
 
 
 
 
 
 
 
 
 
 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2021-08-25 16:14  WhiteSpace  阅读(67)  评论(0编辑  收藏  举报