首页 > 其他分享 >openGauss 不同用户查询同表显示数据不同

openGauss 不同用户查询同表显示数据不同

时间:2024-05-06 16:12:38浏览次数:27  
标签:不同 同名 用户 同表 查询 openGauss areas schema

不同用户查询同表显示数据不同

问题现象

2个用户登录相同数据库human_resource,同样执行如下查询语句,查询同一张表areas时,查询结果却不一致。

select count(*) from areas;

原因分析

  1. 检查同名表是否是同一张表。在关系型数据库中,确定一张表通常需要3个因素:database,schema,table。从问题现象描述看,database,table已经确定, 分别是human_resource、areas。
  2. 检查同名表的schema是否一致。使用omm,user01分别登录发现,search_path依次是public和"$user"。omm作为数据库管理员,默认不会创建omm同名的schema,即不指定schema的情况下所有表都会建在public下。而对于普通用户如user01,则会在创建用户时,默认创建同名的schema,即不指定schema时表都会创建在user01的schema下。
  3. 如果最终判断是同一张表,存在不同用户访问数据不同情况,则需要进一步判断当前该表中对象针对不同的用户是否存在不同的访问策略。

处理办法

  • 对于不同schema下同名表的查询,在查询表时加上schema引用。格式如下。

    schema.table
    
  • 对于不同访问策略造成对同一表查询结果不同时,可以通过查询pg_rlspolicy系统表来确认具体的访问准则。

详情查看:https://opengauss.org

详情查看:https://docs-opengauss.osinfra.cn

标签:不同,同名,用户,同表,查询,openGauss,areas,schema
From: https://www.cnblogs.com/renxyz/p/18175201

相关文章

  • openGauss 常见故障定位案例
    常见故障定位案例core问题定位TPCC运行时,注入磁盘满故障,TPCC卡住的问题备机处于needrepair(WAL)状态问题内存不足问题服务启动失败出现“Error:Nospaceleftondevice”提示在XFS文件系统中,使用du命令查询数据文件大小大于文件实际大小在XFS文件系统中......
  • openGauss 并发写入事务的潜在死锁情况
    并发写入事务的潜在死锁情况只要事务涉及多个表的或者同一个表相同行的更新时,同时运行的事务就可能在同时尝试写入时变为死锁状态。事务会在提交或回滚时一次性解除其所有锁定,而不会逐一放弃锁定。例如,假设事务T1和T2在大致相同的时间开始:如果T1开始对表A进行写入且T2开始对表......
  • STM32F1和STM32F4系列DMA的不同之处——对STM32的DMA的工作机制的一些理解
    喜欢用STM32的DMA功能。一方面STM32的DMA和MPU的DMA一样,可以提高数据传输效率。另一方面,作为一种MCU上的DMA,它可以提高针对外设(peripheral)的数据传输的实时性,改变了传统MCU只能用定时中断实现实时控制的方法。比较STM32F4和STM32F1系列的DMA控制器,可以发现区别主要有三:1)增加了DMA......
  • 不同的子序列
    题目来源:力扣115解法思路:使用动态规划定义dp[i][j]为考虑s中[0,i-1]个字符,t中[0,j-1]个字符的匹配个数。那么显然对于某个dp[i][j]而言,从「最后一步」的匹配进行分析,包含两类决策:1、不让s[i]参与匹配,也就是需要让s中[0,i−1]个字符去匹配t中的[0,j-1]字符。此......
  • [转帖]数据库系列之简要对比下GaussDB和OpenGauss数据库
    GaussDB作为一款企业级的数据库产品,和开源数据库OpenGauss之间又是什么样的关系,刚开始接触的时候是一头雾水,因此本文简要对比下二者的区别,以加深了解。1、GaussDB和OpenGauss数据库简要对比GaussDB是华为基于PostgreSQL数据库内核创新研发的企业级分布式关系型数据库,支持......
  • 火箭上天和飞机上天的原理有何不同?
    火箭靠向后喷射高温高压气体产生的反作用力飞行。飞机靠机翼上下气流的压差产生的升力飞行。参考:https://baijiahao.baidu.com/s?id=1641924575181476234&wfr=spider&for=pc>>空气动力学:空气动力学是力学的一个分支,研究飞行器或其他物体在同空气或其他气体作相对运动情况下的受......
  • 博客园商业化之路:融资做与众不同的众包平台,让开发能力成为一种服务(Coding as a Servi
    园子的诞生,与商业无关,是一位编程爱好者业余时间的偶然。园子的坚持,也与商业无关,是来自服务于成千上万开发者的成就感。当十多年前业余时间无法支撑园子的进一步发展时,初生牛犊不怕虎地毅然辞职从江苏扬州来到上海开始为园子的发展而创业,当时心里知道,只有商业化,才有未来。但那时......
  • 2024-05-04:用go语言,给定一个起始索引为0的字符串s和一个整数k。 要进行分割操作,直到字
    2024-05-04:用go语言,给定一个起始索引为0的字符串s和一个整数k。要进行分割操作,直到字符串s为空:选择s的最长前缀,该前缀最多包含k个不同字符;删除该前缀,递增分割计数。如果有剩余字符,它们保持原来的顺序。在操作之前,可以修改字符串s中的一个字符为另一个小写英文字母。在最佳情......
  • CF1968E.Cells Arrangement-构造(给个和题解不同的做法)
    link:https://codeforces.com/problemset/problem/1968/E题意:需要构造一个\(n\timesn\)的棋盘,在上面放\(n\)枚棋子,设集合\(\mathcal{H}\)表示两两之间曼哈顿距离构成的集合,要让\(|\mathcal{H}|\)最大。给出放棋子的方案。首先说说题解的做法…考虑把距离为奇数和偶数的......
  • 类模板的简单应用(用于存储不同类型数据的类容器)
    类模板应用explicitexplicit是一个关键字,用于指定该构造函数是显式构造函数。在C++中,当一个类的构造函数只有一个参数时,它可以被用于隐式类型转换,这可能会导致意想不到的行为和潜在的错误。为了避免这种情况,可以使用explicit关键字来声明该构造函数,表示禁止隐式类型转换,只能......