首页 > 其他分享 >查询需要使用事务吗?

查询需要使用事务吗?

时间:2024-03-04 17:47:19浏览次数:24  
标签:事务 报表 RR RC 使用 查询 sql

查询需要使用事务吗?

只有一条查询语句,使用不使用都行..

  • 具体看业务场景
  • 比如统计报表问题, 应该保证的是同一时间维度下, 这几条sql语句的查询结果都是当前时刻的. 需要开启事务

事务隔离级别的选择?

  • RC : 对于数据量大的业务, 读操作不添加事务, 对数据的效率要求高
  • RR : 对于传统的软件公司 ,ERP这种项目, 系统内有很多的报表, 这种情况, 需要保证报表的统计是在同一个时间维度下, 选择RR

只讨论报表这个场景下

  • RR: 多条sql查询出来的数据都是在同一时间点的数据.
  • RC: 多条sql查询出来的数据,可能是在不同时间点的数据. 一致性不高

对于 RC 隔离级别下, 进行统计业务, 对于其他人(先执行的SQL语句来说是存在一致性不高的问题, 比如: 每个部门的财务报表, 可能查询的时间上来说,只差了 几秒, 但是对于公平性来说,这里存在一定的偏差.), 所以应该采用RR级别下进行 统计相关业务.

标签:事务,报表,RR,RC,使用,查询,sql
From: https://www.cnblogs.com/RepublicLine/p/18052234

相关文章

  • iPoGo iOS/安卓免費下載使用安裝教學 iPoGo替代品
    身為寶可夢玩家肩負著巨大的責任,你希望每天都能取得越來越多的成就。這是寶可夢優秀玩家的基本要求,因為他們需要切換位置。因此,當物理上不可能時,他們會選擇虛擬應用程式。iPoGoPokemonGo是當今最常用的應用程式之一,它有助於傳送到突襲、跳過動畫和自動捕捉。現在讓我們進一......
  • Qt 使用 Visual Leak Detector(方式一)
    1.使用前的准备参考本人另一篇博客安装VisualLeakDetector下载vld-2.5.1-setup.exe并按步骤安装VLD。这一种使用方式的缺点是,当把项目拷贝到别的电脑上编译运行时,需要按以下流程重新配置VLD环境。但优点是在一台电脑上配置完成后,用的时候十分方便,包含头文件就可以......
  • Qt MSVC使用内存泄露检测工具 VLD(Visual Leak Detector)
    一、简介VLD=VisualLeakDetector,是一款用于VisualC++的免费的内存泄露检测工具,官网 kinddragon.github.io, GitHub 。先说优点:为每个泄漏的块提供完整的堆栈跟踪,包括源文件和行号信息(如果可用)。检测大多数(如果不是全部)类型的进程内内存泄漏,包括基于COM的泄漏......
  • pytnon -- 解决在excel使用pyxll-jupyter时读取excel文件出现”OSError: [Errno 22] I
     在jupyter中运行以下代码:importpandasaspddataset=pd.read_excel(r'‪D:\a.xlsx',sheet_name='Sheet1')print(dataset)出现报错信息:---------------------------------------------------------------------------OSError......
  • 免费ssl证书,使用acme.sh,泛解析,阿里dns自动续期
    -阿里云注册用户,添加dns可编辑权限- curlhttps://get.acme.sh|[email protected] -注意大小写exportAli_Key="<key>"exportAli_Secret="<secret>" - 执行阿里自动dns cd~/.acme.sh/./acme.sh--issue--dnsdns_ali-dexample.com-......
  • 使用SSH客户端登录Linux实例提示“ssh_exchange_identification: read: Connection re
    产品推荐:1、安全稳定的云服务器租用,2核/2G/5M仅37元,点击抢购>>>;2、高防物理服务器20核/16G/50M/200G防御仅350元,点击抢购>>>3、百度智能建站(五合一网站)仅880元/年,点击抢购>>> 模板建站(PC+手机站)仅480元/年,点击抢购>>>使用SSH客户端登录Linux实例提示“ssh_exchange_identifi......
  • 管理端根据角色,获取动态路由,动态引用页面的时候,Vue2和vue3的使用方法
    1、vue2使用的方法,重点注意引用组件的时候使用的requirelettemp=[];children.map((itemChild)=>{letvisible=(itemChild.menuType=='F')?true:false;temp.push({path:itemChild.path,component:resolve=>require([@/views/${itemChild.component}],resolve),meta:......
  • Linux使用netstat查看端口使用情况
    1.netstat(networkstatus网络状态)命令各个参数说明如下:-t:指明显示TCP端口,t是TCP的首字母。-u:指明显示UDP端口,u是UDP的首字母-l:仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序),l是listening的首字母。-p:显示进程标识......
  • python merge函数使用
    函数语法:pd.merge(left,right,how="inner,on=None,left_on=None,right_on=None,left_index=False,right_index=False,sort=True)参数解释:left-数据顿对象。right-另一个数据顿对象on-要连接的列(名称)。必须在左侧和右侧数据框对象中找到lefton-左数据框......
  • 使用 Java 在Excel中创建下拉列表
    下拉列表(下拉框)可以确保用户仅从预先给定的选项中进行选择,这样不仅能减少数据输入错误,还能节省时间提高效率。在MSExcel中,我们可以通过“数据验证”提供的选项来创建下拉列表,但如果要在Java程序中通过代码实现这一功能,可能需要借助一些第三方库。本文将分享两种使用免费Java库......