0
假設員工的過期日期定義爲hire_date後的一年。我創建了試圖做這樣的任務的函數:選擇每個員工的過期日期
create or replace expiredate(empno in number) return date is
hiredate employees.hire_date%type;
begin
select add_months(e.hire_date,12) into hiredate
from employees e
where empno is not null;
return hiredate;
end expiredate;
但它顯示了許多錯誤,比如:
Error starting at line 1 in command:
create or replace expiredate(empno in number) return date is
hiredate employees.hire_date%type
Error at Command Line:1 Column:23
Error report:
SQL Error: ORA-00922: missing or invalid option
00922. 00000 - "missing or invalid option"
*Cause:
*Action:
Error starting at line 3 in command:
begin
select add_months(e.hire_date,12) into hiredate
from employees e
where empno is not null;
return hiredate;
end expiredate;
Error report:
ORA-06550: line 4, column 7:
PL/SQL: ORA-00904: "EMPNO": invalid identifier
ORA-06550: line 2, column 1:
PL/SQL: SQL Statement ignored
ORA-06550: line 5, column 1:
PLS-00372: In a procedure, RETURN statement cannot contain an expression
ORA-06550: line 5, column 1:
PL/SQL: Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
我認爲錯誤的主要思想是太多行的錯誤,但我怎樣才能糾正這個代碼?
我已經忘了功能不幸的是,由於@Mat – 2012-02-25 09:48:52