gpt4 book ai didi

sql - 我的 Oracle View 使用了一个不存在的表,但我仍然可以查询它

转载 作者:行者123 更新时间:2023-12-04 22:25:11 25 4
gpt4 key购买 nike

我有一个 Oracle View ,它使用的表在任何地方都找不到。但是,我仍然可以查询 View ,我认为这是不可能的。

View 内容是否缓存在某个地方,从表仍然存在的时候开始,还是我只是没有足够努力地寻找表?

只是要清楚:我查看了 ALL_TABLES 和 ALL_OBJECTS 并且表(或其他任何内容)都没有出现。

最佳答案

这是很有可能的.. 在 View 上授予选择权不会在基础表上授予选择权。这允许我创建一个 View ,该 View 从我不希望您看到所有的表中公开几列。您必须有权访问该表才能在 ALL_TABLES View 中显示它。如果它确实是一个表,您应该能够在 DBA_TABLES View 中找到它(假设您有权访问 DBA_TABLES View ),该 View 包含所有内容,而不仅仅是您的用户有权访问的表。

事实上,ALL_TABLES View 就是这种情况的一个完美例子。我敢打赌,您也找不到该 View 中使用的表,因为您可能对它所基于的 SYS 表(例如 SYS.user$、SYS.obj$ 等)没有权限。

关于sql - 我的 Oracle View 使用了一个不存在的表,但我仍然可以查询它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4098870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com