删除所有行
DELETE
FROM Helloworlds
这将删除表中的所有数据。运行此代码后,该表将不包含任何行。与 DROP TABLE
不同,这会保留表本身及其结构,你可以继续在该表中插入新行。
删除表中所有行的另一种方法是截断它,如下所示:
TRUNCATE TABLE HelloWords
与 DELETE 操作的区别有几个:
- 截断操作不存储在事务日志文件中
- 如果存在
IDENTITY
字段,则将重置 - TRUNCATE 可以应用于整个表,而不是部分应用(而是使用
DELETE
命令可以关联WHERE
子句)
TRUNCATE 的限制
- 如果存在
FOREIGN KEY
引用,则无法对表进行 TRUNCATE - 如果桌子参加了
INDEXED VIEW
- 如果使用
TRANSACTIONAL REPLICATION
或MERGE REPLICATION
发布表格 - 它不会触发表中定义的任何 TRIGGER