2012-06-24 31 views
1

时,当运行在Oracle 10g中下面的代码(PL/SQL)错误 “绑定变量 ”A“ 未声明” 运行PL/SQL块

DECLARE 
    A NUMBER; 
    B NUMBER; 
BEGIN: 
    A:=&N; 
    B:=&M; 
IF (A>B) 
    DBMS_OUTPUT.PUT_LINE('THE MAXIMUM OF TWO NUMBER IS:' || TO_CHAR(A)); 
ELSE 
    DBMS_OUTPUT.PUT_LINE('THE MAXIMUM OF TWO NUMBERS IS:' || TO_CHAR(B)); 
END IF; 
END; 

我得到的错误“绑定变量 “A” NOT DECLARED',我不知道为什么。这是什么造成的?

+0

你能提一下ORA错误号吗? –

回答

4

您的代码有几个错误。

第一个问题是BEGIN之后应该没有冒号。你写的东西被Oracle解释为BEGIN :A := ...,这应该解释为什么你会得到关于绑定变量A的错误。

第二个问题是与行IF (A>B)。你需要添加一个THEN到最后。

顺便提一句,您可以使用GREATEST(A, B)返回两个数字中较大的一个。