delete、truncate table和drop table的区别

deletetruncate tabledrop table的区别:

(1)首先它的共同点都是删除数据,drop是将表也给删除了

(2)delete只是单单的删除表中的数据,但是它执行的速度是比较慢的,因为它要记录日志信息,也就是说,使用delete语句,系统将一次一行地处理要删除的表中的记录,在从表中删除行之前,在事务处理日志中记录相关的删除操作和删除行中的列值,以防止删除失败时,可以使用事务处理日志来恢复数据。

(3)truncate table则一次性完成删除与表在关的所有数据页的操作。另外,truncate table语句并不更新事务处理日志。由此,在sql server中,使用truncate table语句从表中删除行后,将不能用取消行的删除操作(删除数据不能恢复)但是它没有删除表结构

(4)drop table直接删除数据表和表结构。

突然想到了,删除一个表的主键的方法,一起来看看:

alter table studenttest add constraint stu_snoa primary key clustered(sno)--这是创建主键的方法

alter table studenttest drop constraint stu_snoa--这是删除主键的方法,这里其实就只是删除了一个约束,约束一删除主键就没有了

 

本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/416805,如需转载请自行联系原作者

上一篇:面向对象 03


下一篇:IIS7下配置SSAS通过HTTP远程连接