Sql Oracle用户约束视图未显示所有约束
我需要获取有关所有Oracle元数据对象(例如约束、索引等)的信息。使用PL/SQL Developer浏览数据库时,我能够查看和/或编辑所有此类对象。我的目标是以编程方式从桌面应用程序获取所有这些数据。Sql Oracle用户约束视图未显示所有约束,sql,oracle,constraints,Sql,Oracle,Constraints,我需要获取有关所有Oracle元数据对象(例如约束、索引等)的信息。使用PL/SQL Developer浏览数据库时,我能够查看和/或编辑所有此类对象。我的目标是以编程方式从桌面应用程序获取所有这些数据。 问题来了: 当执行对USER\u约束的查询时我只得到了一些约束,但不是全部(不过我仍然可以在PL/sqldeveloper中看到它们)。当我试图从所有约束获取数据时,也会出现同样的情况(我没有访问DBA\u约束的权限)。 有人能帮忙吗 p.S.问题已解决 我尝试按约束的名称筛选用户\u约束视图
问题来了:
当执行对
USER\u约束的查询时
我只得到了一些约束,但不是全部(不过我仍然可以在PL/sqldeveloper中看到它们)。当我试图从所有约束获取数据时,也会出现同样的情况(我没有访问DBA\u约束的权限)。
有人能帮忙吗
p.S.问题已解决
我尝试按约束的名称筛选用户\u约束
视图(奇怪的是没有找到它们),但一旦按拥有它们的表的名称筛选,我就能够看到它们了。
无论如何,谢谢你的帮助 我遇到了一个类似的问题,我的约束(和表)没有显示在ALL_constraints
视图中。然后我发现我的表对公众不可见,这就是为什么我的其他用户看不到它的原因
解决方案正在执行
GRANT SELECT ON myTable TO public;
如果SQL Developer显示它们,则它们可以在所有构造函数中找到。请向我们展示一个创建表
和选择
的示例,其中约束未显示。您是否在查询中进行筛选?例如,查询所有约束
,但仅查询其中owner=user
,或者对于某些约束类型?一匹没有名字的马,我将提供DDL并稍后选择,出现一些紧急情况。亚历克斯·普尔,现在我正在尝试使用外键。因此,我使用TYPE='R'
过滤视图。下一个过滤器是TABLE='TABLE\u name'
。对于user\u约束
和all\u约束
来说,结果是一样的:有些约束不会显示在结果视图中,尽管我在PL/SQL开发人员UI中看到了它们。