黑马程序员技术交流社区

标题: 数据库删除数据 [打印本页]

作者: 毕山山    时间: 2011-11-18 18:52
标题: 数据库删除数据
truncate  和delete在删除数据的时候有什么不同?  求解释
作者: 付炯    时间: 2011-11-18 19:35
http://wenku.baidu.com/view/afc19d3b87c24028915fc343.html
看一下这篇文章吧 我觉得已经说得很详细了
作者: 朱陈伟    时间: 2011-11-19 15:15
truncate table命令将快速删除数据表中的所有记录,但保留数据表结构。这种快速删除与delete from 数据表的删除全部数据表记录不一样,delete命令删除的数据将存储在系统回滚段中,需要的时候,数据可以回滚恢复,而truncate命令删除的数据是不可以恢复的
作者: 9881008杜鹏    时间: 2011-11-19 15:25
truncate  和delete的不同:
   1.再删除带有id(自增长的)的数据时truncate会删除掉所有数据,并且插入的时候会从新从1(identity设置的开始是1)开始插入
   delete删除的时候只是删除数据不会连同主键的序号(原理是结构)一起删除,如果你数据的最后一个行号是222,执行删除所
有的数据后,delete执行的结果是:再插入时数据的id(主键)是223,而truncate执行后插入数据的id(主键)是1
作者: 杨楠    时间: 2011-11-19 15:47
杜鹏同学讲滴好哇,学习了
作者: 乔克    时间: 2011-11-19 22:21
1.truncate :快速删除表数据,但保留表结构;        
2.truncate :不能触发任何delete触发器。
3.truncate :不会被ROLLBACK撤销;        delete:被ROLLBACK撤销。
4.truncate :是一个DDL语言,不能对truncate使用ROLLBACK命令。



作者: 王兵    时间: 2012-12-22 14:00
Delete 只是删除数据,表还在,还可以继续添加表中的数据,
而drop table不同,直接就将表名删除了,如果新添加数据还得重新建立表,才能添加数据。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2