删除所有行

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 REPLICATIONMERGE REPLICATION 发布表格
  4. 它不会触发表中定义的任何 TRIGGER

[原文如此]