删除所有行

DELETE
FROM Helloworlds

这将删除表中的所有数据。运行此代码后,该表将不包含任何行。与 DROP TABLE 不同,这会保留表本身及其结构,你可以继续在该表中插入新行。

删除表中所有行的另一种方法是截断它,如下所示:

TRUNCATE TABLE HelloWords

与 DELETE 操作的区别有几个:

  1. 截断操作不存储在事务日志文件中
  2. 如果存在 IDENTITY 字段,则将重置
  3. TRUNCATE 可以应用于整个表,而不是部分应用(而是使用 DELETE 命令可以关联 WHERE 子句)

TRUNCATE 的限制

  1. 如果存在 FOREIGN KEY 引用,则无法对表进行 TRUNCATE
  2. 如果桌子参加了 INDEXED VIEW
  3. 如果使用 TRANSACTIONAL REPLICATION 或 MERGE REPLICATION 发布表格
  4. 它不会触发表中定义的任何 TRIGGER

[原文如此]