数据的删除将删除表的部分或全部记录,删除时可以指定删除条件从而删除一条或多条记录。如果不指定删除条件,DELETE语句将删除表中全部的记录,清空数据表。
1 DELETE语法
[ WITH <common_table_expression> [ ,...n ] ] DELETE [ TOP ( expression ) [ PERCENT ] ] [ FROM ] { { table_alias | <object> | rowset_function_limited [ WITH ( table_hint_limited [ ...n ] ) ] } | @table_variable } [ <OUTPUT Clause> ] [ FROM table_source [ ,...n ] ] [ WHERE { <search_condition> | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } ] [ OPTION ( <Query Hint> [ ,...n ] ) ] [; ] <object> ::= { [ server_name.database_name.schema_name. | database_name. [ schema_name ] . | schema_name. ] table_or_view_name }
2 根据指定条件删除一条或多条记录
DELETE FROM [dbo].[Product] WHERE ProductID = 1
3 删除表中全部记录
使用不带WHERE字句的DELETE语句可以删除表中的全部记录。
DELETE FROM [dbo].[Product]
删除表中的全部记录也可以使用TRUNCATE语句:
TRUNCATE TABLE [dbo].[Product]
4 使用 TOP 限制删除的行数
当 TOP (n) 子句与 DELETE 一起使用时,将针对随机选择的 n 行执行删除操作。
DELETE TOP (10) FROM [dbo].[Product]