PL/SQLプロシージャ・コードは/
のときに実行されますが、実行時には実行されません。私が取得エラーメッセージは、私が働いているPLS-00201:識別子を宣言する必要があります
SQL> EXECUTE MAXINUM;
BEGIN MAXINUM; END;
*
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00201: identifier 'MAXINUM' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
コードがあるさ:それは識別子のエラー '与えたとき
DECLARE
N NUMBER;
M NUMBER;
O NUMBER;
P NUMBER;
X NUMBER;
PROCEDURE MAXINUM(N IN NUMBER, M IN NUMBER, O IN NUMBER, P IN NUMBER, X OUT NUMBER) IS
BEGIN
IF N>M AND N>O AND N>P THEN
X:=N;
ELSIF M>N AND M>O AND M>P THEN
X:=M;
ELSIF O>N AND O>M AND O>P THEN
X:=O;
ELSIF P>N AND P>M AND P>O THEN
X:=P;
END IF;
END;
BEGIN
N:=&NUMBER;
M:=&NUMBER;
O:=&NUMBER;
P:=&NUMBER;
MAXINUM(N,M,O,P,X);
DBMS_OUTPUT.PUT_LINE('HIGHEST NUMBER = '||X);
END;
/
、私はエラーを得た。この手順を落としてみました:
SQL> DROP PROCEDURE MAXINUM;
DROP PROCEDURE MAXINUM
*
ERROR at line 1:
ORA-04043: object MAXINUM does not exist
私はこれまでのところ、このエラーに関連するものthis、this、thisソリューションおよび他のソリューションいくつかを読んだことがあります。
これは、[Oracleの組み込み関数 'greatest()'](http://docs.oracle.com/database/121/SQLRF/functions078.htm#SQLRF00645)の半分調理された実装です。 ) – APC