【问题标题】:success with compilation error in oracle Apex while creating procedure创建过程时在 oracle Apex 中编译错误成功
【发布时间】:2016-02-21 15:12:41
【问题描述】:

我正在尝试在 oracle APEX 中创建过程。 当我编写以下代码时,它显示错误:编译错误成功

CREATE PROCEDURE S_PRODUCTTT(
@PNAME VARCHAR(50)
)
BEGIN
SELECT CATEGORY FROM PRODUCT WHERE PNAME=@PNAME
END;

请指导我如何解决此错误

【问题讨论】:

  • 您在 Oracle 手册中的什么地方找到了该语法?

标签: oracle plsql oracle-apex


【解决方案1】:

当您在过程中选择某些内容时,应将结果分配给变量或对象。在您的情况下,您必须声明一个变量,该变量将接收您的查询选择的数据。顺便说一句,我认为您的代码是用于 sql server 程序,而不是 oracle。在 oracle 中,您可以这样做:

 CREATE PROCEDURE S_PRODUCTTT(i_PNAME in VARCHAR2)
 is 
 v_category product.category%type;
 BEGIN
      SELECT CATEGORY into v_category FROM PRODUCT WHERE PNAME=i_PNAME;
 END;

【讨论】:

  • thnx,还请告诉我如何通过 oracle 中的存储过程插入值。
  • 与在普通 sql 中插入值的方式相同:INSERT INTO TABLE VALUES(...)
  • 当我想为其他表创建过程仍然成功但编译错误来了:创建过程 s_course27 (i_ctitle in varchar) is V_rfee course.fee % type;从 ctitle = i_ctitle 的课程开始选择费用到 V_rfee;结束;
猜你喜欢
  • 2020-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-24
  • 1970-01-01
  • 1970-01-01
  • 2014-03-16
相关资源
最近更新 更多