从 Laravel Eloquent 中的表中删除所有记录

2025年3月17日 | 阅读 3 分钟

在本节中,我们将学习如何删除表中的所有记录。 我们将使用 Laravel Eloquent 来执行此操作。 我们可以使用各种版本的 Laravel,例如 6、7 和 8 来删除表中的所有记录。 Laravel 包含 Eloquent,它是一个对象关系映射器。 使用 Laravel Eloquent,我们可以轻松地与数据库进行交互。 每个数据库表对应一个模型。 使用相应的模型,我们可以轻松地与该表进行交互。 Eloquent 用于轻松地从数据库表中获取记录,因为使用它,我们还可以添加、编辑和删除表中的记录。 假设我们将缓存所有记录。 如果用户从表中删除所有记录,我们的记录将从缓存中自动删除。 但我们只能在使用了Laravel Eloquent 的模型时才能从缓存中删除它。

在第一个示例中,我们将使用 truncate() 函数,该函数用于删除所有记录。 在第二个示例中,我们将根据 id 删除记录。 因此,我们将指定一些 id 并使用 delete() 函数删除该特定 id 的所有记录。 如果我们使用 truncate() 函数删除所有表记录,则在删除后,增量值将重置为 1,这是初始位置。 但是如果我们使用 delete() 函数删除记录,则在删除后,增量值不会重置为 1。

这可以称为删除和截断之间的区别。 因此,如果我们尝试删除并重置表中的所有内容,基本上应该选择 truncate() 函数。 如果我们的表包含一个主列并且它设置为自动递增,则不应使用 delete() 函数,因为在这种情况下,自动递增的值将不会重置。 在第三个示例中,我们尝试根据 条件 删除记录。 在第四个示例中,我们将放入 表名 并使用 delete() 函数从表中删除所有记录。

示例 1

示例 2

示例 3

示例 4

现在我们的上述代码已准备好运行。 当我们运行它时,我们将能够删除表行。