oracle删除数据语句怎么写

oracle删除数据语句怎么写,第1张

Oracle数据删除语句

--查看当前SCN数值

SELECT dbms_flashback.get_system_change_number from dual

--Scn与时间的对应关系

SELECT to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’, to_char(DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER) AS SCN from dual

--通过时间flashback query数据

www.2cto.com

SELECT * FROM scott.test AS OF TIMESTAMP TO_TIMESTAMP('2013-11-17 10:25:17', 'YYYY-MM-DD HH:MI:SS')

--通过SCN 闪回数据

SELECT * FROM scott.test AS OF SCN 23565583

--闪回表中误删除的数据

flashback table tablename to timestamp xxx

flashback table tablename to scn xxx

--闪回表前提条件

--该表需开启行移动功能,可在恢复之前打开再执行恢复

alter table test enable row movement

保留表,只删除数据:

truncate table mytable

或者:

delete from mytable where 1 = 1

commit

删除表本身:

drop table mytable

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言(ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。

当表中的数据不需要时 则应该删除该数据并释放所占用的空间 删除表中的数据可以使用Delete语句或者Truncate语句 下面分别介绍 一 delete语句 ( )有条件删除 语法格式 delete [from] table_name [where condition]如 删除users表中的userid为 的数据 delete from users where userid= ( )无条件删除整个表数据 语法格式 delete table_name如 删除user表中的所有数据 delete users 二 Truncate语句 使用Truncate语句是删除表中的所有记录 语法格式 Truncate [table] table_name( )删除所有记录不保留记录占用空间 Truncate [table] table_name [drop storage]如 删除users表中的所有数据并不保存占用空间 Truncate table users drop storage由于默认使用drop storage关键字 所以可以省略 drop storage( )删除所有记录保留记录占用空间 Truncate [table] table_name [reuse storage]如 删除users表中的所有数据并保存占用空间 Truncate table users reuse storage 三 两种删除语句的对比 由于delete语句删除记录时候 记录是逐条删除的 而Truncate 语句删除数据时不产生回退信息 所以如果需要删除大量数据的时候使用delete则占用较多的系统资源 而如果使用Truncate 则会快的多 下面通过实例说明一下 首先建立user表 create table users ( userid varchar ( ) username varchar ( ) userpass varchar ( ) )复制代码 接着插入一条数据 insert into users values( GavinDream )使用复制插入方法插入几万条数据 insert into users(userid username userpass) select * from users我插入了 条数据 使用delete删除花费时间为 seconds 然后又插入了二倍的数据 但使用truncate花费时间仅仅为 seconds 如下图所示 lishixinzhi/Article/program/Oracle/201405/30860


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10857334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存