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

在Oracle APEX中用PL/SQL获取用户输入遇ORA-06550错误求助

解决Oracle APEX中PL/SQL获取用户输入的ORA-06550错误

错误原因

你用的&x是SQL*Plus、Oracle SQL Developer这类客户端工具的替代变量语法,但Oracle APEX的PL/SQL执行环境(不管是SQL Commands还是应用内的PL/SQL逻辑)不支持这种语法,所以触发ORA-06550语法错误。

正确实现方式

场景1:在APEX的SQL Commands中测试

用APEX支持的绑定变量(语法:变量名)替代&x,执行时会自动弹出输入框让你输入数值:

declare 
  a number;
begin
  a := :x;
  dbms_output.put_line(a*6);  
end;           

注意:要在SQL Commands页面右上角点击「DBMS Output」按钮开启输出显示,才能看到计算结果。

场景2:在APEX应用页面中实现用户输入

如果是要在APEX应用里做交互式的输入计算,步骤如下:

  1. 创建一个页面项(比如命名为P1_INPUT_NUM,类型选择「Number Field」),作为用户输入的控件。
  2. 创建一个按钮,在按钮的「PL/SQL代码」处理中写逻辑,直接引用页面项的值:
    declare 
      a number;
    begin
      a := :P1_INPUT_NUM;
      -- 把计算结果赋值给另一个页面项(比如P1_RESULT)来展示
      :P1_RESULT := a * 6;
    end;           
    
  3. 创建页面项P1_RESULT(类型选「Display Only」),用来显示最终的计算结果。

内容的提问来源于stack exchange,提问作者Vishal Gupta

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 10:00:24