删除表(truncate、delete、drop)
删除表中内容分为三种情况。
1、删除表中所有数据,但保留表结构(可⽤以下两个语句):
truncate table 表名;
记住我delete from 表名;
2、删除表中部分数据:
delete from 表名 where 条件;
3、删除表结构及数据:
drop table 表名;
区别:
truncate table 在功能上与不带 where⼦句的 delete 语句相同:⼆者均删除表中的全部⾏。但truncate ⽐
delete 速度快,且使⽤的系统和事务⽇志资源少。 delete 语句每次删除⼀⾏,并在事务⽇志中为所删除的每⾏记录⼀项。
truncate table 通过释放存储表数据所⽤的数据页来删除数据,并且只在事务⽇志中记录页的释放。
truncate,delete,drop放在⼀起⽐较:
truncate table:删除内容、释放空间但不删除定义。
delete table:删除内容不删除定义,不释放空间。
drop table:删除内容和定义,释放空间