MySQL数据库的删除操作delete和truncate的区别

来源:互联网 发布:手机淘宝会员名怎么改 编辑:程序博客网 时间:2024/06/05 06:01

Create table student(

         Id INT(3) primarykey auto_increment,

         Name varchar(4)

);

 

Truncate table student;

 

(1)     delete语句是DML语data manipulation language它们是SELECTUPDATEINSERTDELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言),truncateDDL语句(datadefinition languageDDLDML要多,主要的命令有CREATEALTERDROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。);

(2)    delete语句后面可以跟where子句,通过where子句中的表达式,只删除满足条件的部分记录,而truncate只能用于删除表中的所有记录;

(3)    使用truncate语句删除表中的数据后,再次向表中添加记录时,字段的默认初始值从1开始,而使用delete删除表中的所有记录后,再次向表中添加记录,自动增加字段的值为删除时字段的最大值加1.

(4)    使用delete语句,没删除一天记录都会记录在日志中,而truncate语句不会记录在日志中,因此truncate语句的执行效率比delete语句高。

0 0
原创粉丝点击