Chinaunix首页 | 论坛 | 博客
  • 博客访问: 745573
  • 博文数量: 38
  • 博客积分: 587
  • 博客等级: 中士
  • 技术积分: 579
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-17 14:32
文章存档

2013年(15)

2012年(23)

分类: Mysql/postgreSQL

2012-08-09 22:08:47

MySQL的中Truncate table具有以下特性:
1、Truncate table其实相当于drop table + create table. 所以执行truncate table时要求有drop privileges.
2、Truncate 执行的速度是很快的,由于包含有implicit commit, 所以不能回滚。
3、Truncate执行后,Table的自增列起始值重置为1, AUTO_INCREMENT=1
4、在innodb中,如果有其他表外键约束参照于这个表,则在执行truncate table的时候会失败的。
5、只要数据库的.frm文件有效,不管数据文件和索引文件,都可能使用truncate table来重建表。
6、对于innodb plugin的插件形式的,执行truncate table 后会释放表空间文件大小, 但build-in的做truncate table后,独立表空间文件大小不会变化,最好用alter table xxx engine=innodb再释放一下,已做测试。
阅读(2357) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~