在 sqlite 中删除查询

Posted

技术标签:

【中文标题】在 sqlite 中删除查询【英文标题】:Drop query in sqlite 【发布时间】:2011-09-19 12:45:38 【问题描述】:

可能重复

大家好。

我对删除查询感到困惑,它实际上是如何在内部工作的。我听说我的一篇帖子有人说,当我们使用 drop 查询时,内部将使用 delete 查询。

所以我的问题是,当我们使用 drop 查询时,是否在内部也使用 delete 查询?

【问题讨论】:

【参考方案1】:

通常情况正好相反 - 当您执行“删除所有”查询时,数据库将改为“删除”表然后重新创建它,因为这比删除所有行更快。

那叫"truncate optimization"。

【讨论】:

你错了。假设我有主键字段的自动增量,而不是从 1 开始而不是最后一个值 +1 试试看。 @Pratik:我猜 SQLite 开发人员已经解决了这个问题。 不管他们是否重新创建,这意味着整个架构将被重新创建,不仅是表,它的列 是的,没错。如果他们重新创建表,那么他们如何管理模式? @Pratik:他们可以重新创建架构或类似的东西。这仍然比删除每一行要快。

以上是关于在 sqlite 中删除查询的主要内容,如果未能解决你的问题,请参考以下文章

从 SQLite 中的 SQL 查询结果中删除重复项

删除...在sqlite中的左连接查询[重复]

Kotlin基础从入门到进阶系列讲解(入门篇)下载SQLite软件,如何创建/添加/更新/查询/删除数据

Kotlin基础从入门到进阶系列讲解(入门篇)下载SQLite软件,如何创建/添加/更新/查询/删除数据

在Android SQLITE中删除多行

Android - 用于查找已删除标志的 SQLite 查询 - 未找到异常 DELETED 列