【发布时间】:2016-07-19 09:07:51
【问题描述】:
我在 Oracle Application Express 中执行查询,这很好。在我运行我的应用程序之前,它给了我错误
插件处理期间出现的 PLSQL 代码错误。
ORA-06550:第 4 行,第 1 列:PLS-00905:对象 PURCHASEORDER.ACLSTUDENT_CUSTOM_AUTH 无效 ORA-06550:第 4 行, 第 1 列:PL/SQL:语句被忽略
这是我的 sql
create or replace FUNCTION aclstudent_custom_auth (
p_username IN VARCHAR2(50),
p_password IN VARCHAR2(20))
RETURN boolean IS
valid boolean;
BEGIN
FOR c1 IN (SELECT 1 FROM students
WHERE upper(student_userid) = upper(p_username)
AND upper(student_last_name) = upper(p_password))
LOOP
valid := TRUE;
RETURN valid;
END LOOP;
valid := FALSE;
RETURN valid;
END;
【问题讨论】:
-
您的函数处于无效状态。你要回来两次。修复错误并再次编译。另外,循环的目的是什么?
-
如果您显示
PURCHASEORDER.ACLSTUDENT_CUSTOM_AUTH的编译错误会有所帮助。您可以在 SQLPlus 或 SQL Developershow errors package body PURCHASEORDER.ACLSTUDENT_CUSTOM_AUTH中使用以下命令执行此操作