一、使用方法
delete:delete from table_name where 条件;
drop:alter table_name drop 字段; 搭配 alter 关键字一起使用
drop table table_name;单独使用
二、区别
delete 删除的是表中的数据;只针对数据
drop 删除的是表的结构和表的所有数据;针对数据和表结构
delete 是DML(数据操纵语言:对数据库中的数据进行一些简单操作:insert ,delete , update , selete),执行delete操作时,每次从表中删除一行,并且同时将该行的删除操作记录在 redo 和 undo 表空间中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,需要手动提交(commit)操作才能生效,可以通过rollback 撤销操作;
drop 是DDL(数据定义语言:可进行 建表、建库、设置约束等),不能回滚操作,不会触法触发器,会隐式提交。drop语句删除表结构及所有数据,并将表所占用空间全部释放,同时删除依赖于表的约束、触发器、索引;存储过程、函数将保留,不会被删除,但状态将变成 invalid
删除速度:drop删除速度最快,delete最慢
drop > delete
drop > truncate > delete
Truncate(DDL)
truncate table 表名
truncate 删除表中所有数据,且删除不可恢复,表结构及其列、约束、索引等保持不变。