0
請考慮下面的代碼(query.sql的):PL/SQL程序運行不正常
create or replace function age (dateOfBirth date)
return number
is
mAge number(5,2);
begin
mAge:=(sysdate-dateOfBirth)/365.25;
return mAge;
end;
SQL> @query.sql
13
14
15/
Warning: Function created with compilation errors.
當我點擊顯示錯誤,我得到如下:
代碼:
SQL> show error
Errors for FUNCTION AGE:
LINE/COL ERROR
-------- -----------------------------------------------------------------
5/8 PL/SQL: Item ignored
5/15 PLS-00325: non-integral numeric literal 5.2 is inappropriate in
this context
8/8 PL/SQL: Statement ignored
8/8 PLS-00320: the declaration of the type of this expression is
incomplete or malformed
9/5 PL/SQL: Statement ignored
9/12 PLS-00320: the declaration of the type of this expression is
incomplete or malformed
LINE/COL ERROR
-------- -----------------------------------------------------------------
我試着做以下選項:Oracle Procedure
1) SQL> set role none;
和
2) SELECT ON DBA_TAB_COLUMNS;
但高於第二查詢投擲錯誤:缺少表達。
請讓我知道所有上述的東西有什麼問題。
感謝
謝謝指出。我在這裏粘貼代碼並忘記了BEGIN。修復。我遇到了BEGIN.Anyways出現的錯誤,我會檢查您提到的內容並通知您。 – Tan 2013-05-05 20:59:23
我剛剛檢查了你的第一部分代碼,我得到了「不足的特權」錯誤。如何獲得這個鑽機? – Tan 2013-05-05 21:01:55
很可能你沒有創建函數@AaK的權限;如果是這種情況,則需要以SYS或其他DBA用戶身份登錄,並且將創建過程授予,其中''是您嘗試創建函數的模式的名稱。請參閱文檔:http:/ /docs.oracle.com/cd/B19306_01/network.102/b14266/authoriz.htm#i1009241 –
Ben
2013-05-05 21:05:30