logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动
01/10/2025, by Ivan

删除查询始终应当使用查询构建器对象。它们通过 delete() 方法来执行,如下所示:

$query = $connection->delete('mytable', $options);

这会创建一个删除查询对象,用于从 mytable 表中删除记录。请注意,表名不需要使用花括号,因为查询构建器会自动处理。

删除查询对象使用的是流式 API。也就是说,所有方法(除了 execute())都会返回查询对象本身,从而允许方法链式调用。在很多情况下,这意味着根本不需要将查询对象保存在变量中。

删除查询在概念上非常简单,仅由 WHERE 子句组成。WHERE 子句的完整结构在“条件子句”部分中有详细描述,这里只会简单提及。

一个完整的删除查询形式如下:

$num_deleted = $connection->delete('mytable')
  ->condition('myfield', 5)
  ->execute();

上述查询会删除 {mytable} 表中所有 myfield 列等于 5 的行。这等同于以下 SQL 查询:

DELETE FROM {mytable} WHERE myfield=5;

execute() 方法会返回此次查询所删除的记录数。