如果你想从数据库删除记录,那么需要使用DELETE语句。DELETE语句的基本格式如下:

DELETE FROM <表名> WHERE ...;

如果WHERE条件没有匹配到任何记录,DELETE语句不会报错,也不会有任何记录被删除。

可以看到显示没有任何一行记录被删除。

最后,要特别小心的是,和UPDATE类似,不带WHERE条件的DELETE语句会删除整个表的数据:

DELETE FROM students;

这时,整个表的所有记录都会被删除。所以,在执行DELETE语句时也要非常小心,最好先用SELECT语句来测试WHERE条件是否筛选出了期望的记录集,然后再用DELETE删除。

如果你真的需要删除整个表,不建议使用DELETE FROM 表名;的方式,这种方式删除表是非常原始的,使用DELETE FROM 表名;相当于逐条删除表中的数据,这样的效率过于低下。对于这种需要,我们可以使用下面的语句。

TRUNCATE TABLE 表名;

上面这条语句相当于先删除表,然后创建一张一样格式的表。效率会提高很多。相当于DROP TABLE之后,然后CREATE TABLE。

更多推荐

SQL删除表中数据语句