【问题标题】:How can an Oracle-user query a table in another schema in oracle18c?Oracle 用户如何在 oracle 18c 中查询另一个模式中的表?
【发布时间】:2019-09-21 19:54:28
【问题描述】:

我希望 oracle 用户 c##user2 查询架构 c##user1 中的表 test,但是当我查询表,我收到消息“未选择行”。

两个用户都拥有“CREATE SESSION”和“CREATE TABLE”权限。

我给 c##user2 使用上表的选择权限:

GRANT SELECT ON c##user1.test TO c##user2;

test 表有 2 行。当我以 c##user1 身份查询表时,我得到了 2 行的预期结果。

我使用 c##user2 查询表:

SELECT * FROM c##user1.test;

我希望看到 2 行,但我只得到“未选择行”。我错过了哪些步骤?

【问题讨论】:

  • 您的代码看起来非常好。你确定测试表中有2条记录吗?您最近是否在同一会话中插入了记录并提交了事务?可能是提交没有执行。
  • 原来如此,谢谢。
  • 在这种情况下,接受答案,以便将其标记为已解决。

标签: sql oracle permissions oracle-sqldeveloper oracle18c


【解决方案1】:

如评论中所述,给出答案以将此问题标记为已解决。

您需要在 DML 语句之后执行commit,以便更改在其他会话中可见。

干杯!!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 2015-09-11
    • 1970-01-01
    • 2020-08-01
    • 2022-07-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多