delete 和truncate的区别
1:相同点 :都可以用来删除一个表中的数据
2:不同点:
1)truncate是一个数据库定义语言(DDL),一旦提交不能回滚。而delete执行是每次从表中删除一行数据,同时将删除的操作以日志形式保存,一遍将来进行回滚操作( 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位,事务回滚是指将该事务已经完成的对数据库的更新操作撤销)
2)用delete操作后,被删除的数据占用的存储空间还在。还可以恢复,而truncate操作后,被删除的数据会立即释放占用的存储空间,被删除的数据是不能恢复的。
3)truncate的执行速度比delete快。