19.Yii2.0框架模型删除记录

[TOC]

 //删除记录
    //http://yii.com/?r=home/del
    public function actionDel()
    {
        //查出要删除的记录行
//        方法一:(查一行,删一行)
//        $article = Article::findOne(15);
//        $res=$article->delete(); //返回受影响的行数int 1,如果没有这条记录,报错

//        方法二:(查一行,删一行)
//        $article = Article::find()->where(['article_id'=>14])->one();
//        $res=$article->delete(); //返回受影响的行数int 1,如果没有这条记录,报错

//        方法三:(查多行,删一行)
//        $article = Article::find()->where(['article_id'=>12])->all(); //数组下是一个对象
//        $res = $article[0]->delete();//删除0号单元下的行 返回受影响的行数int 1,如果没有这条记录,报错

        //方法四:(查多行,可以循删除查出来的结果)
//        $article = Article::find()->where(['>','article_id',9])->all(); //数组下是一个对象 查出多行
//        $res = $article[1]->delete();//删除某号单元下的行 返回受影响的行数int 1,如果没有这条记录,报错
//        dd($res);die;

        //方法五:不加条件删除所有
//        Article::deleteALL();

        //方法六:按条件删除一行 占位符要和表里的字段一致
        //返回受影响的行数int 1,如果没有这条记录,报错
//        $res=Article::deleteAll('article_id=:article_id',[':article_id'=>10]);

        //方法七:按条件删除多行 占位符要和表里的字段一致
        //删除>31的所有行 返回受影响的行数int 3,如果没有满足条件的,返回0,
//        $res=Article::deleteAll('article_id>:article_id',[':article_id'=>31]);
        //删除article_id>29 and num>100的所有行 返回受影响的行数int 3,如果没有满足条件的,返回0,
        $res=Article::deleteAll('article_id>:article_id and num>:num',[':article_id'=>29,'num'=>100]);

        dd($res);
posted @ 2018-09-06 04:21  HaimaBlog  阅读(441)  评论(0编辑  收藏  举报