gpt4 book ai didi

sql-server - 截断或删除并创建表

转载 作者:行者123 更新时间:2023-12-02 03:42:33 24 4
gpt4 key购买 nike

我在 SQL Server 2008 R2 实例中有这个表,我有一个每晚针对它运行的计划进程。该表中任一时间最多可包含 500K 条记录。处理此表后,我需要从中删除所有行,因此我想知道以下哪种方法会产生最少的开销(即过多的事务日志条目):

  1. 截断表
  2. 删除并重新创建表

由于时间和它产生的额外事务日志条目,删除表的内容已不再可行。

共识好像是截断,谢谢大家!

最佳答案

TRUNCATE TABLE 是您最好的选择。来自 MSDN :

Removes all rows from a table without logging the individual row deletes.

这意味着它不会使您的事务日志膨胀。删除和创建表不仅需要更复杂的 SQL,还需要额外的权限。附加到表的任何设置(触发器、GRANTDENY 等)也必须重新构建。

关于sql-server - 截断或删除并创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9103037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com