主页 > 知识库 > 数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(实例说明)

数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(实例说明)

热门标签:怎么修改高德地图标注 城市地图标志怎么标注 硅基电话机器人官网 长沙外呼系统平台 漯河电销回拨外呼系统 电话机器人怎么看余额 西安电话自动外呼系统 合肥crm外呼系统加盟 美国地图标注软件下载
数据库删除语句的分别介绍:
Delete:用于删除表中的行(注:可以删除某一行;也可以在不删除表的情况下(即意味着表的结构、属性、索引完整)删除所有行)
语法:删除某一行:Delete From 表名称 Where 列名称=值
删除所有行: Delete From 表名称 或 Delete * From 表名称

Drop:用于删除表(注:将表的结构、属性、索引也会被删除。)
语法:Drop Table 表名称
Truncate:用于删除表内的数据(注:仅删除表内的数据,不删除表本身,相当于Delete语句不写Where子句一样)
语法:Truncate Table 表名称

数据库中删除语句的相同点和不同点的比较:

相同点:

1.truncate和不带where子句的delete,以及drop都能删除表内的数据
2.truncate和delete只删除表数据保留表结构

不同点:

1. truncate table tablename

删除表内容释放表空间保留表结构(即:只删除表内的数据,不删除表本身。相当于Delete语句不写where子句一样),不使用事务处理即和事务无关

truncate 语句缺省情况下将空间释放到 minextents个 extent,
除非使用reuse storage;truncate 会将高水线复位(回到最开始)。

2. delete table tablename [where子句]

delete属于数据操作语言(DML),不能自动提交事务,需commit提交
这个操作会放到 rollback segement 中,事务提交之后才生效;
如果有相应的 trigger,执行的时候将被触发。
delete 语句不影响表所占用的 extent,高水线(high watermark)保持原位置不动

3. drop table tablename

drop属于数据定义语言(DDL)可以自动提交事务;
drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index)【删除表数据同时删除表结构】;
依赖于该表的存储过程/函数将保留,但是变为 invalid 状态。
drop 语句将表所占用的空间全部释放。
删除数据的速度,一般来说: drop> truncate > delete

使用场合:

当你不再需要该表时, 用 drop;
当你仍要保留该表,但要删除所有记录时, 用 truncate;
当你要删除部分记录时(always with a where clause), 用 delete.

注意:
对于有主外键关系的表,不能使用truncate而应该使用不带where子句的delete语句,由于truncate不记录在日志中,不能够激活触发器

作者 韩学敏
您可能感兴趣的文章:
  • 详解MySQL中DROP,TRUNCATE 和DELETE的区别实现mysql从零开始
  • sqlserver中drop、truncate和delete语句的用法
  • drop,truncate与delete的区别
  • 详解SQL中drop、delete和truncate的异同
  • 浅析删除表的几种方法(delete、drop、truncate)
  • MySQL删除表操作实现(delete、truncate、drop的区别)
  • 秒懂drop、truncate和delete的区别
  • SQL删除语句DROP、TRUNCATE、 DELETE 的区别
  • 你也许连删库跑路都不会(delete、drop和truncate删除数据)
  • delete、truncate、drop的区别以及该如何选择

标签:吉林 广西 文山 商洛 济源 玉溪 泸州 抚顺

巨人网络通讯声明:本文标题《数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(实例说明)》,本文关键词  数据库,中,删除,语句,Drop,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(实例说明)》相关的同类信息!
  • 本页收集关于数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(实例说明)的相关信息资讯供网民参考!
  • 推荐文章