广告
返回顶部
首页 > 资讯 > 数据库 >数据库中删除语句Drop、Delete、Truncate有哪些区别
  • 682
分享到

数据库中删除语句Drop、Delete、Truncate有哪些区别

2024-04-02 19:04:59 682人浏览 八月长安
摘要

本篇内容主要讲解“数据库中删除语句Drop、Delete、Truncate有哪些区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库中删除语句Dr

本篇内容主要讲解“数据库中删除语句Drop、Delete、Truncate有哪些区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习数据库中删除语句Drop、Delete、Truncate有哪些区别”吧!

数据库删除语句的分别介绍:
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不记录在日志中,不能够激活触发器

到此,相信大家对“数据库中删除语句Drop、Delete、Truncate有哪些区别”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

您可能感兴趣的文档:

--结束END--

本文标题: 数据库中删除语句Drop、Delete、Truncate有哪些区别

本文链接: https://www.lsjlt.com/news/61125.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 数据库中删除语句Drop、Delete、Truncate有哪些区别
    本篇内容主要讲解“数据库中删除语句Drop、Delete、Truncate有哪些区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库中删除语句Dr...
    99+
    2022-10-18
  • 数据库中Truncate、Delete、Drop区别
    TRUNCATE 用法: TRUNCATE TABLE 表名 DDL语句,删除内容、释放空间,保留表结构。删除表数据,不能删除行数据。 DELETE 用法: DELETE TABLE 表名 WHERE 条件 DML语句,同TR...
    99+
    2020-07-19
    数据库中Truncate Delete Drop区别 数据库入门 数据库基础教程 数据库 mysql
  • SQL语句中删除表数据drop、truncate和delete的用法
    一、SQL中的语法 1、drop table 表名称 eg: drop table dbo.Sys_Test 2、truncate table 表名称 eg: truncate table dbo.Sys_Test ...
    99+
    2023-08-31
    sql 数据库 sqlserver mysql Powered by 金山文档
  • mysql中的delete,drop和truncate有哪些区别
    这篇文章主要讲解了“mysql中的delete,drop和truncate有哪些区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql中的delete,drop和trunca...
    99+
    2023-07-02
  • 数据库中删除表字段的sql语句有哪些
    小编给大家分享一下数据库中删除表字段的sql语句有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!删除表字段的sql语句有哪些...
    99+
    2022-10-18
  • 数据库中删除表中字段的sql语句有哪些
    这篇文章主要介绍数据库中删除表中字段的sql语句有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!删除表中字段的sql语句有:1、删除没有默认值的列【alter table Tes...
    99+
    2022-10-18
  • Oracle数据库中有哪些操作语句
    这篇文章将为大家详细讲解有关Oracle数据库中有哪些操作语句,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、Oracle数据库操作1、创建数据库crea...
    99+
    2022-10-18
  • 数据库基础中的mysql语句有哪些
    数据库基础中的mysql语句有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  数据库与数据库软件:  数据库是数据容器,可以理解为文...
    99+
    2022-10-18
  • 数据库中ADO与RDO有哪些区别
    这篇文章主要为大家展示了“数据库中ADO与RDO有哪些区别”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“数据库中ADO与RDO有哪些区别”这篇文章吧。ADO:是基于什么封装的,连接时用到哪些.d...
    99+
    2023-06-17
  • 在jQuery库中dom节点删除方法detach()和remove()有哪些区别
    这篇文章给大家分享的是有关在jQuery库中dom节点删除方法detach()和remove()有哪些区别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。jquery是什么jquery是一个简洁而快速的JavaSc...
    99+
    2023-06-14
  • Mysql数据库中有哪些常用的sql语句
    Mysql数据库中有哪些常用的sql语句?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。SQL语句进阶1.查询字段:————查询所有字段 sel...
    99+
    2022-10-18
  • 目前数据库中常用的sql语句有哪些
    这篇文章给大家分享的是有关目前数据库中常用的sql语句有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。常用的sql语句1.数据库相关查所有数据库 show ...
    99+
    2022-10-18
  • 数据库中v$lockv和$locked_object的区别有哪些
    这篇文章给大家分享的是有关数据库中v$lockv和$locked_object的区别有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 一、引言工作...
    99+
    2022-10-19
  • MySQL中数据库优化的常见sql语句有哪些
    这篇文章主要介绍“MySQL中数据库优化的常见sql语句有哪些”,在日常操作中,相信很多人在MySQL中数据库优化的常见sql语句有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2022-10-19
  • 数据库中大表删除字段慢的原因有哪些
    小编给大家分享一下数据库中大表删除字段慢的原因有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!由于生产环境,用的是DG架构,因此在数据库同事的协助下,利用DG备库snapshot的功能...
    99+
    2022-10-18
  • 数据库中的left join与right join的区别有哪些
    这篇文章主要介绍“数据库中的left join与right join的区别有哪些”,在日常操作中,相信很多人在数据库中的left join与right join的区别有哪些问题上存在疑惑,小编查阅了各式资料...
    99+
    2022-10-18
  • 数据库中存储过程和触发器有哪些区别
    这篇文章主要讲解了“数据库中存储过程和触发器有哪些区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“数据库中存储过程和触发器有哪些区别”吧!什么是触发器?触...
    99+
    2022-10-18
  • 数据库中alter system switch logfile和alter system archive log current的区别有哪些
    小编给大家分享一下数据库中alter system switch logfile和alter system archive log current的区别有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给...
    99+
    2022-10-19
  • MySQL数据库中执行extra中的using index 和 using where 的区别有哪些
    这篇文章将为大家详细讲解有关MySQL数据库中执行extra中的using index 和 using where 的区别有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文...
    99+
    2022-10-18
  • 数据库中手工rm删除归档日志对备份归档日志的影响有哪些
    这篇文章主要为大家展示了“数据库中手工rm删除归档日志对备份归档日志的影响有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“数据库中手工rm删除归档日志对备份...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作