当表中的数据不需要是,则应该删除该数据,并释放所占用的空间; 删除表中的数据有delete和truncate两种方式,下面分别介绍;

一、delete语句

(1)有条件删除

语法格式:delete [from]  table_name  [where condition];

如:删除users表中的userid为‘001’的数据:delete from users where userid='001';

(2)无条件删除整个表数据

语法格式:delete  table_name;

如:删除user表中的所有数据:delete users ;

二、truncate语句

使用truncate是表示删除表中所有的数据;

语法格式: Truncate [table]  table_name;

(1)删除所有记录不保留记录占用空间

Truncate [table]  table_name  [drop storage];

如:删除users表中的所有数据并不保存占用空间: Truncate table users drop storage; 由于默认使用drop storage关键字,所以可以省略 drop storage;

(2)删除所有记录保留记录占用空间

Truncate [table]  table_name  [reuse storage];

如:删除users表中的所有数据并保存占用空间: Truncate table users reuse storage;

三、两种删除语句的对比

由于delete语句删除记录时候,记录是逐条删除的,而Truncate 语句删除数据时不产生回退信息;所以如果需要删除大量数据的时候使用delete则占用较多的系统资源,而如果使用Truncate 则会快的多。

TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。

但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。

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

TRUNCATE,DELETE,DROP放在一起比较:TRUNCATE TABLE:删除内容、释放空间但不删除定义。DELETE TABLE:删除内容不删除定义,不释放空间。DROP TABLE:删除内容和定义,释放空间。

oracle 删除原有的数据,oracle数据库删除数据的两种方式相关推荐

  1. Android中实现SQLite数据库CRUD操作的两种方式

    Android中实现SQLite数据库CRUD操作的两种方式 SQLite是一款轻量级的关系型数据库,具有运行速度.占用资源少的特点.通常只需要几百KB的内存就够了,因此特别适合在移动设备上使用.SQ ...

  2. Mysql数据库远程连接的两种方式

    mysql 远程连接数据库的二种方法 一.连接远程数据库: 如:MySQL 连接远程数据库(192.168.5.116),端口"3306",用户名为"root" ...

  3. `docker数据持久化volume和bind mounts两种方式

    将数据从宿主机到容器的三种方式: 1,volumes:docker管理宿主机文件系统的一部分(/var/lib/docker/volumes)保存数据的最佳方式 2,bind mounts 将宿主机上 ...

  4. SparkSQL读取hive中的数据,行转列的两种方式【行转列专用函数,UDAF】

    先给数据: vi employees 1,George,nan 2,honey,nv 3,georgedage,nan 4,kangkang,nv 上传数据: hdfs dfs -mkdir /sec ...

  5. spark中将数据输出到json文件的两种方式

    在学习spark时,我们经常遇到要将数据写进一个json文件中的案例.通常的案例就是,给我们一个普通文件,然后我们用sparkcore或者sparkSQL,遍历文件内容后,按照需求将再将遍历后得到的数 ...

  6. Oracle数据库主键自增的两种方式(SEQUENCE和触发器)

    1.准备工作 创建oracle数据库表,用户表 SYS_USERS 其中user_id为主键 -- Create table create table SYS_USERS (user_id NUMBE ...

  7. html中获取modelandview中的json数据_从Bitmap中获取YUV数据的两种方式

    从Bitmap中我们能获取到的是RGB颜色分量,当需要获取YUV数据的时候,则需要先提取R,G,B分量的值,然后将RGB转化为YUV(根据具体的YUV的排列格式做相应的Y,U,V分量的排列) 所以这篇 ...

  8. 批量插入数据库语句java_java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码)...

    java相关:MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码) 发布于 2020-7-22| 复制链接 本文通过实例代码给大家分享了MyBatis批量插入数据到Oracle数据库 ...

  9. oracle自增的两种办法,ORACLE数据库实现自增的两种方式

    Mysql数据库因为其有自动+1,故一般我们不需要花费太多时间,直接用关键字auto_increment即可,但是Oracle不行,它没有自动增长机制.顾我们需要自己去实现.一般有两种方式,但是这两种 ...

最新文章

  1. 如何让Web.xml变得简洁?
  2. gradle全局使用阿里云镜像
  3. PHP(Thinkphp框架)将数据表导出csv文件
  4. Maven的构建配置文件(Build Profiles)
  5. 一卡通大冒险(hdu2512)
  6. 前端学习(360):svn操作前期连接工作
  7. Java描述设计模式(10):组合模式
  8. easyUI按钮图表对照大全
  9. 剑指offer——面试题20:顺时针打印矩阵
  10. Spring的标签和验证等模块
  11. 金融知识图谱的现状与展望
  12. 俄罗斯计划推出数字卢布 逐年解锁推进?国际货币金融体系迈入数字化变革
  13. vue 实现ps图片编辑_详解vue项目中实现图片裁剪功能
  14. 关于获取安卓手机MAC地址的问题
  15. 一文搞懂 CSS3 中的渐变到底怎么玩
  16. JavaWeb jQuery
  17. 如何在微信小程序中下载APP?
  18. 支付宝官方支付接口申请配置教程(如何开通支付宝支付接口)
  19. Transformer Tracking
  20. 将PHP与Identi.ca一起使用,第2部分

热门文章

  1. 视频监控摄像头的互联网化实践思路
  2. DPC创始人Bard:DPC公链基于dpos算法开发的一条支付公链
  3. python语言入门全集-Python语言入门(一)
  4. 微信公众号开发之生成并扫描带参数的二维码(无需改动)
  5. 北京科技大学计算机保研去向,北京科技大学2020年保研率是多少
  6. python读取.data文件总结
  7. 坑:解决64位2013word无法安装32位Visio的问题
  8. Windows搭建SMB服务
  9. 特征工程7种常用方法
  10. 微型计算机硬盘安装在哪,微型计算机的硬盘是该机的