2.drop、truncate都是DDL语句,执行后会自动提交。 不同点: 1. truncate和delete 只删除数据,表结构不变; drop会删除整个表(包括表结构),drop将删除表的结构被依赖的约束(constrain),触发器(trigger)和索引(index),依赖于该表 的存储过程/函数将保留,但变为无效状态。 2. delete 属于DML,该操作会放到 rollbac...
(5) TRUNCATE 和DELETE只删除数据,而DROP则删除整个表(结构和数据)。 (6) truncate与不带where的delete :只删除数据,而不删除表的结构(定义)drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。 (7) delete语句为DML(Data...
不同点 1、delete 是删除表或结果集中的数据行,后可以带 where 子句。 2、truncate 删除表中的所有行,而不记录单个行删除操作。truncate table 在功能上与没有 where 子句的 delete语句相同;但是,truncate table 速度更快,使用的系统资源和事务日志资源更少。 3、drop 删除表中数据,并会将表结构、依赖该表的...
在对整个表和索引进行完全浏览时,经过 truncate 操作后的表比Delete操作后的表要快得多。 4、truncate 不能触发任何Delete触发器。 5、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。 6、不能清空父表
truncate语句不能跟where条件,无法根据条件来删除,只能全部删除数据。 自动编号恢复到初始值。 使用truncate删除表中所有数据要比delete效率高的多,因为truncate操作采用按最小方式来记录日志. truncate删除数据,不触发delete触发器。 drop table 表名 删除表本身,即表中数据和表结构(列、约束、视图、键)全部删除。
1、在速度上,一般来说,drop> truncate > delete。 2、在使用drop和truncate时一定要注意,虽然可以...
您好,drop的意思是删除表或者库。例如drop database 图书:删除图书库,是库删除了,库的所有的东西都没了。delete是删除表里的数据,是一行数据,不是删除某个数据,是一行,比如说是删除一个人的整条读者数据。 TRUNCATE是删除某个数据,具体到某个,列仍然保留,只是数据没了。希望能解决你的问题 ...
drop 是DDL操作,是删除表了,语句运行之后,这个表对象都不存在了。delete是删除记录,会记录日志,是一般的删除,是DML操作。truncate是清空记录,相当于把表初始化,删除了表内所有的记录,如果表有自增长字段,会初始化到建表时的状态,不会记录日志。