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

Oracle APEX 22.2中页面项如何显示多值?应选何种项类型?

解决方案

1. 先修复查询语句

你的原始查询会触发ORA-01422: 实际返回的行数超出请求的行数错误,因为SELECT ... INTO仅支持单行结果。必须先将多行mat_cat合并为单个字符串,推荐使用Oracle的LISTAGG函数:

SELECT LISTAGG(mat_cat, ', ') WITHIN GROUP (ORDER BY mat_cat)
INTO :P4_SHOW_MAT_CAT
FROM mat_req;
  • 若需要换行展示,可将分隔符, 替换为<br>,适配多行展示的页面项。

2. 选择合适的页面项类型

根据展示需求选择对应类型:

  • 文本字段(Text Field):适合短内容的逗号分隔单行展示。
  • 文本区域(Text Area):适合较长内容,支持自动换行,搭配<br>分隔符可实现每行一个值的效果。
  • 显示仅文本(Display Only Text):适合只读场景,若要生成带项目符号的列表,可修改查询为:
SELECT '<ul><li>' || LISTAGG(mat_cat, '</li><li>') WITHIN GROUP (ORDER BY mat_cat) || '</li></ul>'
INTO :P4_SHOW_MAT_CAT
FROM mat_req;

需将该页面项的Escape Special Characters属性设为No,避免HTML被转义为纯文本。

内容的提问来源于stack exchange,提问作者Mohammed Ali

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 23:05:53