直接 model 删除

$model = User::find($id);
$model->delete();

带有条件的删除

$connection ->createCommand()
->delete('tbl_user', 'status = 0')
->execute();

使用 Query 查询删除

$connection ->createCommand('DELETE FROM tbl_user WHERE userid=:userid')
->execute();

使用预处理语句删除

方法一

$model = $connection->createCommand('DELETE FROM tbl_user WHERE userid=:userid');
$model->bindParam(':userid', $userid);
$userid = 5;
$model->execute();

方法二

在 Yii2 使用预处理语句删除多个用户。

$model = $connection->createCommand('DELETE FROM tbl_user WHERE userid=:userid');
$model->bindParam(':userid', $userid);
// delete user 1
$userid = 1;
$model->execute();
// delete user 2
$userid = 2;
$model->execute();

查找并且删除

$user = User::findOne(2);
$user->delete();
// 输出语句
// DELETE FROM `tbl_user` WHERE `id`='2'

deleteAll() 删除多个

如果你不指定任何条件下,该方法将删除表中的所有行。例如删除用户表中状态条件是 active 和年龄大于20的用户。

方法一

User::deleteAll('status = :status AND age > :age', [':age' => 20, ':status' => 'active']);
//Output Query
//DELETE FROM `tbl_user` WHERE status = 'active' AND age > 20

方法二

User::deleteAll([
'and',
'type = :type_id',
['not in', 'usercategoryid', $categoriesList]
],
[
':type_id' => 2
]);
//Output Query
//DELETE FROM `tbl_user` WHERE (type = 2) AND (`usercategoryid` NOT IN (1, 2, 3))

yii2 删除数据的更多相关文章

  1. CRL快速开发框架系列教程四(删除数据)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  2. 读书笔记--SQL必知必会16--更新和删除数据

    16.1 更新数据 使用UPDATE语句更新或修改表中的数据.必须有足够的安全权限. 更新表中的特定行 更新表中的所有行 使用UPDATE时一定要细心,不要省略WHERE子句. SET命令用来将新值赋 ...

  3. Web jquery表格组件 JQGrid 的使用 - 7.查询数据、编辑数据、删除数据

    系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...

  4. MySQL数据库5 - 插入数据,修改数据,删除数据

    一.插入数据 1. 所有列都插入值 INSERT [INTO] TABLE_NAME VALUES(V1,V2....Vn); 特点:列值同数,列值同序 eg: insert into users v ...

  5. X删除数据表的新用法

    删除数据表,可以这样进行,以前傻不拉唧的用sql去手动删除.             DAL dal = ...             dal.Db.CreateMetaData().SetSche ...

  6. Kafka深入理解-3:Kafka如何删除数据(日志)文件

    Kafka作为消息中间件,数据需要按照一定的规则删除,否则数据量太大会把集群存储空间占满. 参考:apache Kafka是如何实现删除数据文件(日志)的 Kafka删除数据有两种方式 按照时间,超过 ...

  7. MySQL(四) 数据表的插入、更新、删除数据

    序言 数据表的插入.更新.删除非常简单,但是简单的也要学习,细节决定成败. ---WH 一.插入数据 格式:INSERT INTO 表名(字段名...)VALUES(值...); 创建环境 使用per ...

  8. ThinkPHP 修改,删除数据,全部显示

    1,修改数据 //数据修改 function Update() { $model = D("info"); /* //1,数组方式 $attr = array( "Cod ...

  9. Oracle 恢复被删除的数据,解决误操作删除数据

    在删除数据的时候不小心,把delete语句执行错了,把别的表给delete,而且还执行了commit!真汗.......数据是相当的重要........废话少说了!赶快找方法吧: 第一种: 1.打开F ...

随机推荐

  1. Bitmap缩放(一)

    使用矩阵进行压缩,通过缩放图片尺寸,来达到压缩图片的效果,和采样率的原理一样.先用位图的option将位图压缩一半,再用matrix缩放0.3f public class MainActivity e ...

  2. 使用Socket通信(一)

    使用socket需要一个服务器,我用的是tomcat,好像AS不支持Tomcat了,还有什么好的服务器求推荐,使用Tomcat去官网下载,然后还要安装Java的jdk,然后配置jak环境变量,然后配置 ...

  3. C# 9.0 新特性预览 - init-only 属性

    C# 9.0 新特性预览 - init-only 属性 前言 随着 .NET 5 发布日期的日益临近,其对应的 C# 新版本已确定为 C# 9.0,其中新增加的特性(或语法糖)也已基本锁定,本系列文章 ...

  4. TypeScript魔法堂:枚举的超实用手册

    前言 也许前端的同学会问JavaScript从诞生至今都没有枚举类型,我们不是都活得挺好的吗?为什么TypeScript需要引入枚举类型呢? 也许被迫写前端的后端同学会问,TypeScript的枚举类 ...

  5. SpringBoot+JPA+SpringSeurity+JWT

    目的:使用这个框架主要就是为了解决高并发环境下登陆操作对数据库及服务器的压力,同时能保证安全性: 加载时,SpringSecurity定义拦截器和添加两个Fitler: 登陆时,登陆成功,通过传入的信 ...

  6. Gym102012A Rikka with Minimum Spanning Trees

    题意 \(T\) 组数据,每组数据给定一个 \(n\) 个点,\(m\) 条边,可能含有重边自环的图,求出最小生成树的个数与边权和的乘积,对 \(10^9+7\) 取模. \(\texttt{Data ...

  7. .NET内存分析工具-dotMemory

    .NET内存分析工具-dotMemory 1.介绍 官网链接 引言 程序内存占用较大?内存溢出?需要分析生产环境程序怎么办? dotMemory 使您可以分析各种 .NET 和 .NET Core应用 ...

  8. 一次 KVM 虚拟机磁盘占满的排查过程

    一次 KVM 虚拟机磁盘占满的排查过程 KVM 虚拟机系统为 CentOS,文件系统为 XFS. 现象如下: 使用 df -h 命令发现磁盘剩余空间为30k(总大小为30G),使用 df -i 发现 ...

  9. windows搭建ftp

    控制面板                此时输入电脑用户名和密码可在自己电脑访问,但是其它电脑不能访问 接下来防火墙允许的应用将FTP服务器打钩 控制面板\系统和安全\Windows Defender ...

  10. CF1066F Yet another 2D Walking

    DP 由图可以知道优先级相同的点都在一个"7"字形中 所以在走当前的优先级的点时最好从右下的点走到左上的点,或从从左上的点走到右下的点 那记dp[i][0]表示在走完第i个优先级时 ...