通过Oracle PL / SQL输入值时出错

时间:2012-11-09 23:51:02

标签: oracle function

我希望在带有PL SQL的Oracle 10g中通过控制台输入值。我使用的是基于Web的界面而不是SQL *。 该计划是这样的:

DECLARE
      v_desc VARCHAR2(50);
BEGIN
    v_desc:=show_desc(&sv_cnumber);
    DBMS_OUTPUT.PUT_LINE(v_desc);
END;

,功能是:

CREATE OR REPLACE FUNCTION show_desc
    (i_course_id course.course_id%TYPE)
RETURN varchar2
AS
        v_desc varchar2(50);
BEGIN
SELECT description
    INTO v_desc
    FROM courses
WHERE course_id=i_course_id;
RETURN v_desc;
EXCEPTION
    WHEN NO_DATA_FOUND
   THEN
    RETURN('no description found');
END;    

当我运行此代码时,我收到一条错误消息:

ORA-06550:第4行,第37栏: PLS-00103:遇到符号“&”期待以下之一:

错误是什么? 感谢

1 个答案:

答案 0 :(得分:1)

如果您希望显示提示,以便输入变量值,请尝试替换&用冒号

v_desc:=show_desc(:sv_cnumber);

&是PL / SQL

中的special symbol