关于sql:删除所有记录

Delete all the records

如何删除SQL Server 2008中的所有记录?


删除表中的所有记录而不删除表。

DELETE FROM table_name小心使用,没有撤消!

删除表格

DROP TABLE table_name


从一张桌子?

如果您没有其他表的外键,则可以使用此选项

1
TRUNCATE TABLE TableName

要么

1
DELETE TableName

如果你想要所有的桌子

1
sp_msforeachtable 'delete ?'


我可以看到上面显示的其他答案是正确的,但我会让你的生活变得轻松。

我甚至为你创造了一个例子。我添加了一些行并希望删除它们。

您必须右键单击该表,如图所示脚本表a>删除到>新查询编辑器窗口:

enter image description here

然后将使用脚本打开另一个窗口。删除"where"行,因为要删除所有行。然后单击"执行"。

enter image description here

要确保您正确执行此操作,请右键单击表格,然后单击"选择前1000行"。然后您可以看到查询为空。


使用DELETE语句

1
DELETE FROM <TableName>

例如:

1
DELETE FROM Student;

如果你想重置你的桌子,你可以做到

1
TRUNCATE TABLE TableName

truncate需要权限,如果你的表有dependents(另一个表有你表的FK的表,你不能使用它)


对于一张桌子

1
TRUNCATE TABLE [TABLE name]

对于所有表格

1
EXEC sp_MSforeachtable @command1="truncate table ?"


当表非常大时,最好用drop table TableName删除表本身并重新创建它,如果有人创建表查询;而不是使用delete from语句逐个删除记录,因为这可能很耗时。