oracle11g的闪回技术-闪回表-时间戳

--数据库闪回表

--1创建表(登录模式system)

CREATE table dept2 as select * from dept;--此语句如果加上where条件可用于工作中数据的临时备份

select * from dept2;--查询新建表信息

--进入sql>set time on 通过时间点闪回 记录弹出的时间点:类似linux命令行,可以设置带时间的如图所示,方便记录dml语句的操作时间戳,方便利用闪回时间戳

--2删除数据

DELETE FROM dept2 where deptno=12;

commit;

rollback;--通过回滚恢复不了数据了

--3利用闪回表恢复-需要启动行移动功能,否则无法闪回

alter table dept2 enable row movement;

flashback table dept2 to timestamp TO_TIMESTAMP('2024-01-17 10:03:41','yyyy-mm-dd hh24:mi:ss');--可以看到执行后,之前删除的记录又回来了。

--查看当前系统时间格式,

select sysdate from dual;

--通过下面可以修改会话的时间格式

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

注意:

本案例操作过程中需要注意的就是做删除操作的时候,在sql>下执行,不要在客户端执行,开始时间点选择了在建表之前,报错提示如下:时间戳是从这里获取的参数

SQL\]flashback table dept2 to timestamp TO_TIMESTAMP('2023-01-17 10:03:41','yyyy-mm-dd hh24:mi:ss') \[Err\] ORA-08180: no snapshot found based on specified time ![](https://file.jishuzhan.net/article/1747983489388515329/08ba3dbbc1a70eab592a90343bd204cd.webp) 后来修改了正确的时间戳就没有问题了

相关推荐
Dontla14 小时前
Python asyncpg库介绍(基于Python asyncio的PostgreSQL数据库驱动)连接池、SQLAlchemy
数据库·python·postgresql
俺不要写代码14 小时前
数据库:DQL
数据库·sql·mysql
zh15702314 小时前
如何编写动态SQL存储过程_使用sp_executesql执行灵活查询
jvm·数据库·python
2401_8242226914 小时前
SQL报表统计数据量巨大_分批统计策略
jvm·数据库·python
俺不要写代码14 小时前
数据库:DCL
数据库
X566114 小时前
mysql如何处理连接数过多报错_调整max_connections参数
jvm·数据库·python
学习3人组14 小时前
OEE(设备综合效率)的标准定义、公式、损失分类、以及在工位触屏/MES里怎么采集和统计
大数据·网络·数据库
张~颜14 小时前
PostgreSQL数据压缩技术
数据库·postgresql
m0_6091604914 小时前
MongoDB中什么是Hashed Shard Key的哈希冲突_哈希函数的分布均匀性分析
jvm·数据库·python
小碗羊肉15 小时前
【MySQL | 第十一篇】InnoDB引擎
java·数据库·mysql