删除表(记录和结构)的语名delete   ————   truncate      ———— drop

DELETE (删除数据表里记录的语句)

DELETE FROM表名 WHERE 条件;

注意:删除记录并不能释放ORACLE里被占用的数据块表空间. 它只把那些被删除的数据块标成unused.

如果确实要删除一个大表里的全部记录, 可以用 TRUNCATE 命令, 它可以释放占用的数据块表空间

TRUNCATE TABLE 表名;

此操作不可回退.

相同点

truncate和不带where子句的delete, 以及drop都会删除表内的数据

注意:

1.这里说的delete是指不带where子句的delete语句

2.在存储过程中默认是不允许执行truncate table tablename操作的,所以要使用

execute   immediate 'truncate table tablename';

例如:

CREATE OR REPLACE PROCEDURE proc_delete_all_data

IS

BEGIN

execute immediate 'truncate table T_FLOW_ACCOUNT';

execute immediate 'truncate table T_FLOW_MERCHANT';

END proc_delete_all_data;

不同点:

1. truncate和 delete只删除数据不删除表的结构(定义)

drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态.

2.delete语句是dml,这个操作会放到rollback segement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发.

truncate,drop是ddl, 操作立即生效,原数据不放到rollback segment中,不能回滚. 操作不触发trigger.

3.delete语句不影响表所占用的extent, 高水线(high watermark)保持原位置不动

显然drop语句将表所占用的空间全部释放

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

4.速度,一般来说: drop>; truncate >; delete

5.安全性:小心使用drop 和truncate,尤其没有备份的时候.否则哭都来不及

使用上,想删除部分数据行用delete,注意带上where子句. 回滚段要足够大.

想删除表,当然用drop

想保留表而将所有数据删除. 如果和事务无关,用truncate即可. 如果和事务有关,或者想触发trigger,还是用delete.

如果是整理表内部的碎片,可以用truncate跟上reuse stroage,再重新导入/插入数据

oracle中删除表中的一列语句

alter table 表名 drop colum 列名

oracle 删除一个值,Oracle 删除数据的几种方法相关推荐

  1. oracle 删除一个值,Oracle删除(delete)

    Oracle删除(delete) Oracle中对表数据的删除是利用delete命令进行的. delete命令结构:delete from 表名 where 条件 命令解析: 1.当delete fr ...

  2. pandas从dataframe中删除一个或多个数据列

    pandas从dataframe中删除一个或多个数据列 目录 pandas从dataframe中删除一个或多个数据列 #删除数据列的基本语法

  3. oracle 数据导入 mysql_oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)...

    这篇文章主要介绍了oracle导入导出数据的二种方法,利用PL/SQL Developer工具导出和利用cmd的操作命令导出的出方法,大家参考使用吧 方法一:利用PL/SQL Developer工具导 ...

  4. oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)

    这篇文章主要介绍了oracle导入导出数据的二种方法,利用PL/SQL Developer工具导出和利用cmd的操作命令导出的出方法,大家参考使用吧 方法一:利用PL/SQL Developer工具导 ...

  5. 【DB笔试面试597】在Oracle中,获取执行计划有哪几种方法?

    ♣题目部分 在Oracle中,获取执行计划有哪几种方法? ♣答案部分 一般来说,有如下几种获取执行计划的方式: 1.AUTOTRACE方式 AUTOTRACE是Oracle自带的客户端工具SQL*Pl ...

  6. php删除数组指定的元素,php删除数组中指定值的元素的几种方法

    php删除数组中指定值的元素的几种方法 发布时间:2020-11-11 10:44:07 来源:亿速云 阅读:102 作者:小新 这篇文章主要介绍php删除数组中指定值的元素的几种方法,文中介绍的非常 ...

  7. 删除单元格_VBA(实验1)用VBA 删除某列空单元格的3种方法:删除法,转移到其他列方法,数组方法...

    1 要解决的问题:删除某列中的空单元格/空行 暂时只实现了删除一列中的空行,并没有实现多行的判断空行和删除方法.----之后再做更复杂的 1.1 需求分析 用VBA删除如下内容,解决思路都不同 删除1 ...

  8. python 字符串删除重复_Python删除list里的重复元素有几种方法?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  9. 实现对gridview删除行时弹出确认对话框的四种方法

    实现对gridview删除行时弹出确认对话框的四种方法 在.net2.0中,实现对gridview删除行时弹出确认对话框的四种方法 1,GridView中如何使用CommandField删除时,弹出确 ...

最新文章

  1. 2022-2028年中国碘矿行业竞争格局分析及市场需求前景报告
  2. ORACLE EXP命令
  3. 【Java 泛型】泛型用法 ( 泛型编译期擦除 | 上界通配符 <? extends T> | 下界通配符 <? super T> )
  4. 转:关于CCDISK的优化
  5. windows11推出:win10可免费升级,支持安卓APP,减重40%
  6. qemu 对虚机的地址空间管理
  7. 【数据结构总结】第一章:数据结构基本概念
  8. update se_Java SE 7 Update 25 –发行说明进行了解释。
  9. 电脑闪屏是什么原因_啄木鸟家庭维修|液晶电视闪屏什么原因
  10. SSHnbsp;整合-nbsp;6nbsp;-nbsp;service_serviceImp…
  11. C语言的数据类型→浮点型数据
  12. linux七周四次课(3月22日)
  13. 一周畅销书速报 | 端午节特别版
  14. 八数码问题c语言,启发式搜索算法解决八数码问题(C语言)
  15. 从市盈率、市净率、增值率看公司盈利经营发展状况
  16. Pygame实战:我妈50岁,戒不掉消消乐!看我给您安排一款百变款消消乐!厉害!
  17. 派森诺转录+代谢组联合分析
  18. java 开发优势_Java最核心的优势是什么?
  19. matlab画图中颜色渐变
  20. 每日新闻丨阿里云成为唯一MongoDB服务的云厂商;微软云新服务:可访问量子计算...

热门文章

  1. Vue3通透教程【十六】TS自动编译
  2. 京东iphone8的异步加载爬取评论
  3. 2017-12-01 中英文代码对比之ZLOGO 4 LOGO
  4. 数学建模——永冻土层上关于路基热传导问题
  5. mysql 好友列表设计_好友列表:关系数据库表设计
  6. 谷歌 I/O 2019来啦!让我们看看有什么黑科技吧
  7. 安卓手机tiktok怎么下载_安卓手机清理大师官方下载-安卓手机清理大师app下载v1.1.0 安卓版...
  8. vivo的Android版本功能,vivo 新系统功能升级!解禁性能限制,运行更流畅
  9. C++之类型转换函数
  10. html调起苹果手机摄像头_html5调用手机摄像头