MySQL TRUNCATE&DELETE
来源:互联网 发布:淘宝店铺页头图片尺寸 编辑:程序博客网 时间:2024/04/29 19:19
TRUNCATE TABLE用于完全清空一个表。从逻辑上说,该语句与用于删除所有行的DELETE语句等同,但是在有些情况下,两者在使用上有所不同。
对于InnoDB表,如果有需要引用表的外键限制,则TRUNCATE TABLE被映射到DELETE上;否则使用快速删减(取消和重新创建表)。使用TRUNCATE TABLE重新设置AUTO_INCREMENT计数器,设置时不考虑是否有外键限制。
对于其它存储引擎,在MySQL 5.1中,TRUNCATE TABLE与DELETE FROM有以下几处不同:
·删减操作会取消并重新创建表,这比一行一行的删除行要快很多。
·删减操作不能保证对事务是安全的;在进行事务处理和表锁定的过程中尝试进行删减,会发生错误。
·被删除的行的数目没有被返回。
·只要表定义文件tbl_name.frm是合法的,则可以使用TRUNCATE TABLE把表重新创建为一个空表,即使数据或索引文件已经被破坏。
·表管理程序不记得最后被使用的AUTO_INCREMENT值,但是会从头开始计数。即使对于MyISAM和InnoDB也是如此。MyISAM和InnoDB通常不再次使用序列值。
·当被用于带分区的表时,TRUNCATE TABLE会保留分区;即,数据和索引文件被取消并重新创建,同时分区定义(.par)文件不受影响。
TRUNCATE TABLE是在MySQL中采用的一个Oracle SQL扩展。
来自mysql手册!
- MySQL TRUNCATE&DELETE
- MySQL Delete、Truncate、updateDelete
- mysql TRUNCATE delete
- mysql delete和truncate区别
- MYSQL中delete与truncate
- Mysql---truncate与delete区别
- mysql delete和truncate区别
- mysql----drop,truncate.delete区别
- mysql 操作总结--DELETE和TRUNCATE TABLE
- MySQL 删除数据 Delete 语句 、Truncate 语句
- mysql TRUNCATE命令和DELETE的区别
- MySql的Delete、Truncate、Drop分析
- mysql delete与truncate的区别
- MySQL删除数据Delete 语句、Truncate 语句
- Mysql DELETE语句与TRUNCATE语句区别
- mysql delete,truncate与drop的区别
- mysql中truncate、delete、drop区别
- mysql清空表delete和truncate命令介绍
- setsockopt 设置socket 详细用法
- 不找借口找方法——成功者都有的基本素质 关于执行力
- 铁路售票系统应用软件需求分析报告
- 初为项目经理
- 求助
- MySQL TRUNCATE&DELETE
- 通过mstsc来隐藏客户端计算机名
- 深入struts2(二)
- 页面老报错: 对象不支持此属性或方法
- pk头发不乱讲的oa系统怎么初始化不了____急死人了
- 20091012_language_english
- 花了一下午,弄明白四个名词 USCI,USI,LIN,IrDa
- Struts中Title标签简介
- Windows服务程序与SOCKET服务器联合应用时客户端遇到的SOCKET:10060错小结