1、不在需要的数据,就要执行删除操作,删除语法如下:
DELETE FROM 表名称 [ WHERE 删除条件(s) ] ;
其中,WHERE子句里面,依然可以使用子查询进行操作。
范例:删除雇员编号是7566的雇员信息
DELETE FROM myemp WHERE empno=7566 ;
范例:删除雇员编号是7788、7902的雇员信息
DELETE FROM myemp WHERE empno=7788 OR empno=7902 ;
DELETE FROM myemp WHERE empno IN(7788, 7902) ;
注意:用了rollback回退操作!所以7566的数据还存在
范例:删除高于公司平均工资的雇员信息
DELETE FROM myemp WHERE sal>(SELECT AVG(sal) FROM myemp)
范例:删除全部记录
DELETE FROM myemp ;
一定要记住,在任何的系统之中,删除操作都属于极其危险的操作。实际上,一个稳定的系统,对于删除操作,都是具备一个逻辑删除和物理删除的两种方式:
◆ 物理删除:直接执行DELETE FROM,彻底从表中删除记录。
◆ 逻辑删除:增加一个逻辑的字段,例如:有一个flag字段,如果flag=1表示已经被删除,如果flag=0表示没有被删除。
如果真执行的是删除操作,那么,就相当于修改了flag字段的内容,同时在每次查询的时候,只需要增加一个WHERE限定条件(SELECT * FROM ... WHERE flag=1)。
【总结】
1、 更新操作,要比查询操作,更加的简单(语法都固定)。
2、 所有的更新操作,每次更新完成之后,都一定会返回更新的数据行数,如果没有更新,则返回0。
网友评论