`
jilong-liang
  • 浏览: 482650 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

oracle的delete drop truncate删除的区别

阅读更多
delete --删除所有记录,表结构还在,写日志,可以恢复的,速度慢
   |savepoint p;--在删除数据之前创建一个点p,用于回滚你删除的数据
   |delete from 表名; --在删除这个表时在commit命令又无法回滚了
   |rollback to p;    --当你回滚这个点的时候就报你savepoint 'P' never established;	
drop   --删除表的结构和数据
   |drop table  表名
truncate --删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快。
   |truncate table 表名

 

0
4
分享到:
评论

相关推荐

    详解Truncate delete drop三者的区别

    详细阐述了Oracle中三种删除的方式truncate,drop和delete三者的区别和联系.

    delete,truncate和drop的区别

    尽管`drop`、`truncate`和`delete`都是DDL或DML操作,但在Oracle中,仍有可能恢复已删除的数据或表: - **drop操作**:如果Oracle的回收站功能被启用,则可以通过回收站恢复已删除的表。需要注意的是,这取决于表...

    利用 Oracle 系统触发器防止误删除表操作

    当DBA或其他用户具有足够的权限时,可能会因为输入错误等原因执行`DROP TABLE`或`TRUNCATE TABLE`命令,导致重要的数据表被意外删除或清空。例如,用户原本打算删除名为`A`的表(`DROP TABLE A CASCADE CONSTRAINTS;`...

    oracle数据库删除数据Delete语句和Truncate语句的对比.docx

    Oracle 数据库删除数据 Delete 语句和 Truncate 语句的对比 Delete 语句和 Truncate 语句是 Oracle 数据库中两种常用的删除数据的方法,但是它们之间存在着明显的差异。 一、Delete 语句 Delete 语句是一种 DML...

    Oracle给用户授权truncatetable的实现方案

    然而,Oracle不支持直接为用户授予针对单个表的`TRUNCATE`权限,而是通常将更广泛的`DROP ANY TABLE`权限赋予用户,但这可能会带来安全隐患。本文将探讨两种实现为用户授权`TRUNCATE TABLE`的方案,以确保安全性和可...

    SQL语句中----删除表数据drop、truncate和delete的用法

    SQL语句中----删除表数据drop、truncate和delete的用法,对你爱不完

    oracle数据库删除数据Delete语句和Truncate语句的使用比较

    在Oracle数据库中,删除表中数据有两种主要方式:Delete语句和Truncate语句。两者在功能上相似,但有着显著的区别,适用于不同的场景。 **Delete语句** Delete语句是一种灵活的数据删除方式,它可以有条件地删除...

    Oracle删除语句.txt

    根据提供的文件信息,本文将详细解释Oracle数据库中的删除操作,包括DELETE、DROP以及TRUNCATE三个主要命令。这些命令在数据库管理中极为重要,能够帮助我们有效地管理数据表中的记录或整个表结构。 ### Oracle删除...

    Oracle数据库误删除数据的不同恢复方法整理

    - **原理**:当使用`DROP`命令删除表后,Oracle并没有立即清除表占用的空间,而是将其放入了一个特殊的区域——回收站中,直到这些空间被新的数据覆盖。 - **查询回收站**:可以通过查询`USER_TABLES`视图或`USER_...

    Oracle恢复误删除数据

    在 Oracle 中,delete 方法可以使用闪回方法恢复删除的数据。如果在删除数据后还没有进行大量的操作(只要保证被删除数据的块没有被覆写),就可以利用闪回方式直接找回删除的数据。 首先,需要确定删除数据的时间...

    Oracle数据库误删除数据的不同恢复方法整理(超级实用)

    在执行DROP或DELETE操作后,Oracle并不会自动回收表所占用的空间,这可能会导致磁盘空间浪费。为了释放这些空间,可以采取以下两种方式之一: 1. **使用TRUNCATE**:该命令会直接清空表中的所有数据,并且不可恢复...

    Oracle Database 10g删除表的程序.rar_oracle 10g

    与`DELETE`不同,`TRUNCATE`不记录任何删除操作,因此速度更快,但同样不可逆。若需删除表而保留其结构,可以使用`TRUNCATE TABLE`后再`DROP TABLE`。 在实际操作中,可能需要编写PL/SQL程序或脚本来自动化这些过程...

    百亿级别海量数据删除方案(不停机维护)

    - **使用Oracle GoldenGate**:通过Oracle GoldenGate等工具实现数据的实时复制,可以在不影响生产环境的情况下进行数据删除操作。 - **异步处理**:建立异步处理机制,将数据删除任务放入队列中,由后台进程异步...

    delete from 表名与truncate table 表名区别

    - `DELETE` 权限通常授予用户对单个记录的删除能力,而 `TRUNCATE TABLE` 需要有更高的权限,比如 `DROP` 权限,因为它涉及到表结构的修改。 - 因此,在设置用户权限时,需要注意区分这两种操作,以防止用户不小心...

    truncate 表恢复

    与`DELETE`命令不同的是,`TRUNCATE`不触发任何触发器也不记录回滚信息,因此执行速度更快。具体来说,`TRUNCATE`操作的原理在于它**并不会逐个清除用户数据块上的数据**,而是**仅重置数据字典和元数据块上的元数据...

    清除oracle分区表数据

    TRUNCATE命令用于快速删除表中的所有数据,并且释放分配给这些数据的空间。与DELETE命令不同的是,TRUNCATE操作不记录任何日志,因此执行速度更快,但也不能回滚。对于分区表而言,可以针对单个分区使用TRUNCATE命令...

    DB2与ORACLE常用语句对照

    - 删除数据:`DELETE FROM`在两者中也是相同的,但Oracle的`TRUNCATE TABLE`用于快速删除所有行并回收空间,而DB2则用`DELETE FROM ... WHERE 1=0`模拟此行为。 3. 数据查询语言(DQL): - `SELECT`语句基本兼容,...

Global site tag (gtag.js) - Google Analytics