You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SQL查询获取Oracle Apex应用中的所有导航菜单列表?

获取Oracle Apex应用已使用的导航菜单列表的SQL查询方案

要查询指定Oracle Apex应用中所有已使用的导航菜单,你可以利用Apex内置的元数据表apex_application_navigation_menu_entries,结合你已经用到的apex_application_pages来关联页面信息。以下是几种实用的查询方案:

1. 完整导航菜单条目及关联页面信息

这个查询会返回所有菜单条目,包括对应的页面名称、ID,以及菜单的结构顺序:

SELECT
    n.menu_name,
    n.entry_name,
    n.entry_sequence,
    n.entry_link,
    p.page_name,
    p.page_id,
    n.entry_type
FROM
    apex_application_navigation_menu_entries n
LEFT JOIN
    apex_application_pages p 
        ON n.application_id = p.application_id 
        AND n.entry_target LIKE '%f?p=' || p.application_id || ':' || p.page_id || '%'
WHERE
    n.application_id = 25459
ORDER BY
    n.menu_name,
    n.entry_sequence;
  • apex_application_navigation_menu_entries:存储应用所有导航菜单条目的核心元数据表,包含菜单名称、条目名称、链接目标、显示顺序等字段
  • LEFT JOIN关联apex_application_pages:通过页面链接的标准格式f?p=APP_ID:PAGE_ID:...匹配菜单条目对应的页面信息
  • 过滤条件n.application_id = 25459:指定你要查询的应用ID

2. 带层级结构的导航菜单查询

如果需要区分父菜单和子菜单的层级关系,可以加入parent_entry_id字段:

SELECT
    n.menu_name,
    n.parent_entry_id,
    n.entry_name,
    n.entry_sequence,
    n.entry_link,
    p.page_name,
    p.page_id,
    n.entry_type
FROM
    apex_application_navigation_menu_entries n
LEFT JOIN
    apex_application_pages p 
        ON n.application_id = p.application_id 
        AND n.entry_target LIKE '%f?p=' || p.application_id || ':' || p.page_id || '%'
WHERE
    n.application_id = 25459
ORDER BY
    n.menu_name,
    n.parent_entry_id NULLS FIRST,
    n.entry_sequence;
  • parent_entry_id:为空时表示该条目是父菜单,非空时对应子菜单所属的父条目ID,NULLS FIRST确保父菜单排在子菜单之前

3. 仅查询已关联到页面的菜单条目

如果只需要那些实际链接到应用内页面的菜单条目,可以将LEFT JOIN改为INNER JOIN,并去重:

SELECT
    DISTINCT n.menu_name,
    n.entry_name,
    p.page_name,
    p.page_id
FROM
    apex_application_navigation_menu_entries n
INNER JOIN
    apex_application_pages p 
        ON n.application_id = p.application_id 
        AND n.entry_target LIKE '%f?p=' || p.application_id || ':' || p.page_id || '%'
WHERE
    n.application_id = 25459
ORDER BY
    n.menu_name,
    n.entry_name;

内容的提问来源于stack exchange,提问作者Retal Omar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 06:05:14