DELETE语句用于删除表中的记录。
在SQL DELETE语句
DELETE语句用于在表中删除行。
DELETE语句语法
DELETE FROM table_name
WHERE some_column = some_value ;
请注意在SQL DELETE语句的WHERE子句!
WHERE子句指定哪些记录或应该删除的记录。 如果省略WHERE子句,所有记录都将被删除!
演示数据库
在本教程中,我们将使用众所周知的Northwind示例数据库。
下面是从选择"Customers"表:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbkop | Christina Berglund | Berguvsvagen 8 | Lulea | S-958 22 | Sweden |
在SQL中删除实例
假设我们要删除的客户"Alfreds Futterkiste"从"Customers"表。
我们用下面的SQL语句:
例
DELETE FROM Customers
WHERE CustomerName='Alfreds Futterkiste' AND ContactName='Maria Anders';
试一试» 该"Customers"表现在这个样子:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbkop | Christina Berglund | Berguvsvagen 8 | Lulea | S-958 22 | Sweden |
删除所有数据
能够删除表中的所有行,而不删除表。 这意味着该表结构,属性和索引将是完整的:
DELETE FROM table_name ;
or
DELETE * FROM table_name ;
Note:删除记录时要非常小心。 您不能撤消这句话!