Ich bin sehr neu zu Oracle-Paketen und fragte mich, ob jemand erklären könnte, warum dies nicht kompilieren/ausführen wird.Orakel-Paket Problem
CREATE OR REPLACE PACKAGE login_pkg IS
FUNCTION login_ck_pf
(p_user IN VARCHAR2,
p_pass IN VARCHAR2)
RETURN CHAR;
END;
/
CREATE OR REPLACE PACKAGE BODY login_pkg IS
FUNCTION login_ck_pf
(p_user IN VARCHAR2,
p_pass IN VARCHAR2)
RETURN CHAR
IS
lv_ck_txt CHAR(1) := 'N';
lv_id_num NUMBER(5);
BEGIN
SELECT idShopper
INTO lv_id_num
FROM bb_shopper
WHERE username = p_user
AND password = p_pass;
IF SQL%FOUND THEN
lv_ck_txt := 'Y';
lv_id_num := lv_id_num;
END IF;
RETURN lv_ck_txt;
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('Invalid Login');
lv_ck_txt := 'N';
return lv_ck_txt;
END;
END;
/
show errors;
execute login_pkg.login_ck_pf('gma1', 'goofy');
Vielen Dank für Ihre Hilfe bisher, ich habe es kompilieren jetzt muss ich nur noch herausfinden, wie man es nennen. Wenn die Zeile gefunden wird, ich möchte ein Y zurückzukehren und wenn es nicht gefunden wird, ich N.
PACKAGE login_pkg compiled
PACKAGE BODY login_pkg compiled
No Errors.
Error starting at line 35 in command:
execute login_pkg.login_ck_pf('gma1', 'goofy')
Error report:
ORA-06550: line 1, column 7:
PLS-00221: 'LOGIN_CK_PF' is not a procedure or is undefined
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
Sobald Sie eine Antwort erhalten haben, bearbeiten Sie Ihren Beitrag nicht, um eine neue Frage zu stellen. SO ist eine Q & A Site, kein Forum. Es ist eine Frage pro Thread und (idealerweise) eine Antwort pro Frage. Also frage einfach eine neue Frage (verlinke mit der alten Frage, wenn es angemessen ist). Bearbeiten Sie Ihre Frage, um ihre Bedeutung zu verstehen, verwirrt Menschen und verschmutzt den Thread. – APC