相同点
都能删除表中的全部数据;
不同点
1.truncate是DDL,delete是DML命令,所以truncate命令更准确的说是修改表的定义(属性);
2.truncate不支持事务回滚,而delete支持事务回滚;
3.如果表的主键是自增的,那么使用truncate清空表后会初始化自增属性(重新从1开始自增);而delete删除所有数据后,主键自增属性不会被初始化,接着清除数据前的自增值继续自增。
都能删除表中的全部数据;
1.truncate是DDL,delete是DML命令,所以truncate命令更准确的说是修改表的定义(属性);
2.truncate不支持事务回滚,而delete支持事务回滚;
3.如果表的主键是自增的,那么使用truncate清空表后会初始化自增属性(重新从1开始自增);而delete删除所有数据后,主键自增属性不会被初始化,接着清除数据前的自增值继续自增。
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。