【问题标题】:Oracle APEX Table/Viewer Owner dropdownOracle APEX 表/查看器所有者下拉列表
【发布时间】:2021-06-09 20:31:35
【问题描述】:

如何编辑下拉菜单中显示的架构,以便为新表、表单等选择表所有者?我已经在 APEX 内部添加了我想要的模式。创建新应用程序时,我将所有模式都视为选项,但在同一工作区中的其他应用程序的下拉列表中却没有。我还看到未分配给此工作区的架构选项。这份名单来自哪里?

【问题讨论】:

  • 我会准确地说出您提到的位置 - 以 ADMIN 用户身份连接到 INTERNAL 工作区,然后您“管理”该特定 wokspace 并向其中添加另一个架构。
  • 我已经做到了。它们不会出现在这个特定的下拉列表中。我没有添加到工作区的模式会显示在这个下拉列表中。
  • 这很奇怪。您是否有机会在不同的数据库上使用两个(或更多)Apex'?也许 - 作为管理员 - 您在一个数据库中添加了模式,但是 - 作为开发人员 - 您在另一个数据库中使用 Apex?

标签: oracle schema oracle-apex


【解决方案1】:

看起来该列表是这样一个选择的结果

SELECT DISTINCT
  owner
  FROM
  all_tables
  WHERE owner NOT IN (<any of the internal oracle schemas like sys, system, ctxsys, etc>)
UNION 
SELECT DISTINCT
  owner
  FROM
  all_views
  WHERE owner NOT IN (<any of the internal oracle schemas like sys, system, ctxsys, etc>)
;

此选择以拥有应用程序的数据库用户身份运行。 要对此进行测试:假设应用程序归 SCOTT 所有,并且架构 HR 存在但不在下拉列表中。将 HR 模式中的表上的选择权限授予 SCOTT。观察 HR 现在出现在下拉列表中。

从应用程序的角度来看,这是有道理的 - 此选择向您显示具有当前架构可以访问的对象的架构。如果其中没有可以选择的表,那么显示架构有什么用?

【讨论】:

  • 谢谢!实际上,我昨晚很晚才发现这一点,并回到这里发布解决方案。奇怪的是,我在网上找不到有关此功能如何工作的任何信息。每个人都一直告诉我将架构分配给工作区。感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多