oracle的闪回操作及一些相关知识点
1. 背景
在查询oracle数据表最近一次更新时间时查了些资料,做个总结
2. 闪回操作
alter table test_table enable row movement ;
# 闪回
flashback table test_table to timestamp to_timestamp('2021-11-17 18:00:00','yyyy-mm-dd hh24:mi:ss');
3. 引用
4. 拓展
Oracle存在rownum, rowid, ora_rowscn这样的伪列
select rownum, rowid, ora_rowscn from test_table ;
其中Oracle中scn有最小值
# 查询当前最小scn -- 五天前
select min(scn) from sys.smon_scn_time;
# scn转日期 , 小于min(scn)会报错
select to_char(scn_to_timestamp(25119557960751), 'YYYY-MM-DD HH24:MI:SS') FROM DUAL
# 日期转scn , 小于min(scn)对应的timestamp会报错
select timestamp_to_scn(to_date('2022-01-21 06:58:34','yyyy-mm-dd hh24:mi:ss')) from dual ;
-- 查询所有快照时刻
select to_char(scn_to_timestamp(scn), 'YYYY-MM-DD HH24:MI:SS') from sys.smon_scn_time order by scn desc;
# 查询数据表某一时刻的快照 , 小于min(scn)对应的timestamp会报错
select * from test_table as of timestamp to_date('2022-01-21 11:19','yyyy-mm-dd hh24:mi');
select * from test_table as of timestamp to_date('2022-04-12 13:40:23', 'yyyy-mm-dd hh24:mi:ss');
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统