oracle rowscn 简单记录

news2024/11/15 15:36:39

可以通过ROWSCN 侦测row是否有变化,但需要注意:

  • 默认是一个block的scn 相同
  • 可以通过create table ROWDEPENDENCIES 在每行上记录
  • 无论哪种模式,ROW SCN是一个大致值,不是准确值

NOROWDEPENDENCIES | ROWDEPENDENCIES

This clause lets you specify whether table will use row-level dependency tracking. With this feature, each row in the table has a system change number (SCN) that represents a time greater than or equal to the commit time of the last transaction that modified the row. You cannot change this setting after table is created.
ROWDEPENDENCIES

Specify ROWDEPENDENCIES if you want to enable row-level dependency tracking. This setting is useful primarily to allow for parallel propagation in replication environments. It increases the size of each row by 6 bytes.

NOROWDEPENDENCIES

Specify NOROWDEPENDENCIES if you do not want table to use the row-level dependency tracking feature. This is the default.

Whether at the block level or at the row level, the ORA_ROWSCN should not be considered to be an exact SCN. For example, if a transaction changed row R in a block and committed at SCN 10, it is not always true that the ORA_ROWSCN for the row would return 10. While a value less than 10 would never be returned, any value greater than or equal to 10 could be returned. That is, the ORA_ROWSCN of a row is not always guaranteed to be the exact commit SCN of the transaction that last modified that row. However, with fine-grained ORA_ROWSCN, if two transactions T1 and T2 modified the same row R, one after another, and committed, a query on the ORA_ROWSCN of row R after the commit of T1 will return a value lower than the value returned after the commit of T2. If a block is queried twice, then it is possible for the value of ORA_ROWSCN to change between the queries even though rows have not been updated in the time between the queries. The only guarantee is that the value of ORA_ROWSCN in both queries is greater than the commit SCN of the transaction that last modified that row.

PS : oracle的其它scn参考 URL

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/714052.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件测试丨常用测试策略与测试手段

测试策略是指在特定环境约束之下,描述软件开发周期中关于测试原则、方法、方式的纲要,并阐述了它们之间如何配合,以高效地减少缺陷、提升质量。 测试策略中需要描述测试类型与测试目标以及测试方法,准入准出的条件,以…

初学spring5(六)静态/动态代理模式

学习回顾:初学spring5(五)使用注解开发 一、代理模式 为什么要学习代理模式,因为AOP的底层机制就是动态代理! 代理模式: 静态代理动态代理 学习aop之前 , 我们要先了解一下代理模式! 二、静态代…

【前端】element button鼠标点击按钮更改样式

目录 一、实现效果二、代码如下&#x1f680;写在最后 一、实现效果 二、代码如下 <span><el-button type"text"><img src"../../../../../src/assets/slice/question.png" style"font-size: 14px;margin-bottom: 0.26rem">&l…

安全响应中心 — 垃圾邮件事件报告(6.28)

2023年6月 第四周 样本概况 ✅ 类型1&#xff1a;伪造正常转发邮件&#xff08;链接&#xff09; 钓鱼邮件一直是邮件防护绕不开的话题。近日安全团队收到了一批钓鱼邮件&#xff0c;发送者将正常邮件内容和钓鱼内容拼凑在一起&#xff0c;将一封钓鱼邮件伪装成经过转发的正…

TypeScript 总结

文章目录 TypeScript 总结概述运行ts文件方式一方式二 基础声明变量类型数组元组联合类型取值限制 枚举类型any & unknownvoid & undefined类型适配 面向对象函数普通函数箭头函数可选参数默认参数 对象创建对象对象的类型限制 类和接口泛型简单使用多个泛型默认泛型类…

react基础-React原理揭秘React路由基础

React原理揭秘 目标 能够说出React组件的更新机制能够对组件进行性能优化能够说出虚拟DOM和DIff算法 组件更新机制 setState() 的两个作用 修改state更新组件 过程&#xff1a;父组件重新渲染时&#xff0c;也会重新渲染子组件&#xff0c;但只会渲染当前组件子树&#xff…

BUUCTF Cipher 1

BUUCTF:https://buuoj.cn/challenges 题目描述&#xff1a; 还能提示什么呢&#xff1f;公平的玩吧&#xff08;密钥自己找&#xff09; Dncnoqqfliqrpgeklwmppu 注意&#xff1a;得到的 flag 请包上 flag{} 提交, flag{小写字母} 密文&#xff1a; Dncnoqqfliqrpgeklwmppu解…

vector 数据流查询命令

原文来自&#xff1a;vector 数据流查询命令 | 老五笔记 A lightweight, ultra-fast tool for building observability pipelines&#xff0c;vector在日常运维数据采集中也具有非常重要的作用。很多命令和详细说明可以从官方文档中达到最权威的介绍&#xff1a; Vector | A l…

Nginx【Nginx场景实践(代理服务、 反向代理、负载均衡、负载均衡算法)】(八)-全面详解(学习总结---从入门到深化)

目录 Nginx场景实践_代理服务 Nginx场景实践_反向代理 Nginx场景实践_负载均衡 Nginx场景实践_负载均衡算法 Nginx场景实践_代理服务 正向代理 正向代理&#xff0c;是在用户端的。比如需要访问某些国外网站&#xff0c;我们可能需要购买vpn。 正向代理最大的特点&#…

[软件基础] ELF executable and linking formate

Chapter 7 Object File Format (Linker and Libraries Guide) https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-46512/index.html

何时开始学习Qt和C++,以及如何有效学习?

学习Qt并使用C编程可以为您开发跨平台的图形用户界面&#xff08;GUI&#xff09;应用程序提供良好的基础。下面是一些学习Qt的步骤和建议&#xff0c;以及建议的C知识水平&#xff0c;适合您开始学习Qt&#xff1a; 学习C基础知识&#xff1a;Qt是使用C编写的&#xff0c;因此…

【计算机网络】集线器和交换机的区别

1. 早期–总线型以太网 2. 集线器–星型以太网 3.以太网交换机 4. 集线器和以太网交换机的对比 4.1 单播、多播、同时单播 4.2 扩展以太网的单播 4.3 扩展以太网的多播 4.4 小结

麒麟系统(Liunx)离线安装docker和docker compose

文章目录 一、前言二、准备工作1、查看操作系统版本2、查看操作系统架构 三、安装docker和docker compose1、下载docker离线包2、下载docker compose离线包3、准备 docker.service 系统配置文件4、准备docker的安装脚本文件5、准备docker的卸载脚本文件6、安装 docker 和 docke…

【Axure高保真原型】通过输入框动态控制饼图

今天和大家分享通过输入框动态控制饼图的原型模板&#xff0c;在输入框里维护项目数据&#xff0c;可以自动生成对应的饼图&#xff0c;鼠标移入对应扇形&#xff0c;可以查看对应数据。使用也非常方便&#xff0c;只需要修改输入框里的数据&#xff0c;或者复制粘贴文本&#…

低代码应用开发 高效构建业务系统

低代码是传统软件开发逐步优化和演变的产物&#xff0c;并非全新革命。传统的开发方法过于昂贵和僵化&#xff0c;无法为企业提供所需的高效和敏捷的开发流程&#xff0c;且交付周期长定制能力弱&#xff0c;难以应对不断变化的市场和客户期望&#xff0c;为提高软件开发效率&a…

Python - bool转int,用类型转换还是if-else?

说下结论&#xff0c;虽然直接用int强转的写法比较简洁&#xff0c;但是用if-else的效率更高&#xff08;规避了函数调用的开销&#xff09;。 举个栗子&#xff1a; lst [True, False]def a(a100000):starttime.time()for i in xrange(a):lst[0 if random.choice(lst) else …

PCL vtk 计算点云的体积和表面积

一、CC中计算体积和表面积 二、PCL中计算体积和表面积 vtkMassProperties 来计算体积和表面积&#xff0c;但是必须是三角化的模型&#xff0c;不能是多边形的模型 vtkTriangleFilter如果是其他模型的就转换为三角化的模型 // 计算点云的体积和表面积 // 输入的不能是点云&am…

限时等待

如果一个线程要等待的线程的目标没有实现&#xff0c;那么他会一直等下去&#xff0c;此时就陷入了阻塞等待。 还有一种等待状态叫做延时等待&#xff0c;如果如果我去吃饭&#xff0c;但是饭店已经客满&#xff0c;需要排号&#xff0c;当排到我号时&#xff0c;饭店会叫我&am…

持续挖掘助力创新,亚马逊云科技全新开启“创业加速器”第一期招募

就像人从婴儿开始成长&#xff0c;参天大树从嫩芽开始成长一样&#xff0c;所有成功的企业都是从几个人、初创团队起步发展的。例如&#xff0c;当今全球云计算的 Top 巨头亚马逊云科技&#xff0c;就是从亚马逊内部孵化出来的创业团队&#xff0c;亚马逊现任 CEO Andy Jassy&a…

查看windows上的dll内容

1、安装Visual Studio时选择c桌面开发和通用Windows平台开发 2、cmd运行在Visual Studio安装路径下的VC\Auxiliary\Build\vcvars64.bat 3、在这个窗口中运行dumpbin