delete
删除的是表中的数据;
可以删除部分数据,或者说可以通过条件来删除某些信息;
数据可以回滚;
常用语法:
删除表内的数据:delete [表名] 或者 delete from [表名];
删除表内指定项:delete from [表名] where [列名]='xxx';(其中,from 可以省略)
eg:delete from t_Class where classID='1'
drop
删除的是表,包含所有的数据;
不能根据指定条件删除数据;
不可回滚;
常用语法:
drop table [表名]
truncate
不可回滚;
作用与 delete 一样,都是删除 表中的全部数据,区别在于:
1.delete 语句删除数据的时候,自动编号没有恢复到默认值。但是truancate语句重新设置了自动编号
(自动编号:表示该列是主键且自动加一,对应的创建sql语句是:[列名] int identity(1,1) primary key)
2.通过truncate语句删除表中的数据的时候,只能一次性都清空,不能根据条件来删除,而delete可以根据条件来删除。
3.truncate语句清空表中的数据时,速度(性能)比delete语句快的多的多的多。
4..truncate语句不触发delete触发器。
常用语法:
truncate table [表名]