truncate
不做日志,因此不能恢复。
效率高!delete...
写日志,可以rollback,效率相对低一些。

解决方案 »

  1.   

    Truncate 只删除数据不删除表结构,Delete 所有的都删除 还有的同上
      

  2.   

    回复人: CAINIAO_oooo() ( ) 信誉:100  2005-08-01 10:54:00  得分: 0  
     
     
       Truncate 只删除数据不删除表结构,Delete 所有的都删除 还有的同上
      
     
    delete也不删除表结构的.
      

  3.   

    TRUNCATE和DELETE有以下几点区别    1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。    2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。    3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。    4、TRUNCATE不能触发任何DELETE触发器。    5、不能授予任何人清空他人的表的权限。    6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。    7、不能清空父表。
      

  4.   

    delete有修复表的功能
    那TRUNCATE是不是也有?
    谢谢
      

  5.   

    您所指的修复是?TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。 
      

  6.   

    我看mysql的帮助文档
    里面说如果一个表坏了
    可以通过delete from table来修复
    delete具有修复功能