TRUNCATE和DELETE的用法和区别

原创 2013年12月05日 23:51:32


TRUNCATE 命令用法
语法
TRUNCATE TABLE name

参数
name

是要截断的表的名称或要删除其全部行的表的名称。

注释
TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。

TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。

对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

TRUNCATE TABLE 不能用于参与了索引视图的表。

DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

使用TRUNCATE语句进行删除的数据不能够回滚,而使用DELETE语句进行删除的数据可以进行回滚。


版权声明:本文为博主原创文章,未经博主允许不得转载。

sql中 truncate 和 delete 有什么区别

  • 2011年05月27日 14:30
  • 21KB
  • 下载

oracle之delete和truncate命令用法和区别

delete删除表的数据,可以指定条件删除,如果事务未提交,则可以回滚; truncate删除表的全部数据,只保留表结构,事务自动提交,数据不可以回滚。 实例: 1. 新建一个表 create...
  • yhl_jxy
  • yhl_jxy
  • 2017年02月08日 17:11
  • 643

sql之truncate、delete与drop区别

  • 2012年03月06日 10:40
  • 5KB
  • 下载

sql之truncate_、delete与drop区别.pdf

  • 2011年04月22日 10:01
  • 54KB
  • 下载

Oracle 删除数据两种语句: DELETE 和 TRUNCATE 的区别

Oracle 删除数据两种语句: DELETE 和 TRUNCATE 的区别语法delete from aa truncate table aa 区别...

删除表数据drop、truncate和delete的用法与区别

说到删除表数据的关键字,大家记得最多的可能就是delete了 然而我们做数据库开发,读取数据库数据.对另外的两兄弟用得就比较少了 现在来介绍另外两个兄弟,都是删除表数据的,其实也是很容易理解的 ...

SQL语句中的 truncate 、delete与drop区别

SQL语句中的truncate、delete和drop的差异

实例对比Oracle中truncate和delete的区别

实例对比Oracle中truncate和delete的区别 删除表中的数据的方法有delete,truncate, 它们都是删除表中的数据,而不能删除表结构,delete 可以删除整个表的数据也...

MySQL DELETE语句和TRUNCATE TABLE语句的区别之处

在MySQL中有两种方法可以删除数据,一种是MySQL DELETE语句,另一种是MySQL TRUNCATE TABLE语句。DELETE语句可以通过WHERE对要删除的记录进行选择。而使用TRUN...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TRUNCATE和DELETE的用法和区别
举报原因:
原因补充:

(最多只允许输入30个字)