A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李晓泉 中级黑马   /  2013-3-14 09:30  /  1798 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数据库中delete和truuncate有什么区别?

3 个回复

倒序浏览
delete table 删除表中数据
truncate table tbName 清空数据库中数据
一般C#代码中的删除指的是Delete清空可以认为是truncate---限于对测试数据,一般很少用到
回复 使用道具 举报
delete删除部分数据,删除后将删除操作作为事务记录到日志中以便进行回滚操作撤销删除。
truncate清空整个表中的数据,删除后不能恢复。
另外,drop是删除表。
回复 使用道具 举报
TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。   DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。
TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE,DELETE,DROP放在一起比较:
TRUNCATE TABLE:删除内容、释放空间但不删除定义。
DELETE TABLE:删除内容不删除定义,不释放空间。
DROP TABLE:删除内容和定义,释放空间。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马