当用户可以介绍他们的用户名和密码时,我被要求创建一个程序,我应该能够根据“购物者”表中的内容匹配用户信息。我创建了一个对我来说似乎正确的过程,但是当我运行插入有效用户名和有效密码的过程时,它告诉我:it cannot be used as an assignment target
在这里,我将发布我的代码,看看是否能得到任何帮助。顺便说一句,作为问题的一部分,我应该使用 IN OUT 参数,该过程从用户那里接收用户名和密码,并在匹配登录时返回全名。如果用户没有输入正确的信息,一个持有“INVALID”的变量应该会显示该消息。有没有人知道这里的错误是什么,我已经花了很多时间试图解决这个问题,但我仍然不能。我很感激任何帮助。
create or replace PROCEDURE member_ck_sp
(p_user IN VARCHAR2,
p_pass IN OUT VARCHAR2)
IS
lv_check_txt VARCHAR2(10) := 'INVALID';
lv_fullname_txt VARCHAR2(25);
CURSOR MEMBER_CUR IS
SELECT firstname, lastname, cookie, username, password
FROM bb_shopper
WHERE username = p_user
AND password = p_pass;
BEGIN
FOR REC_CUR IN MEMBER_CUR LOOP
IF p_user = rec_cur.username AND p_pass = rec_cur.password THEN
p_pass := rec_cur.firstname || ' ' || rec_cur.lastname;
dbms_output.put_line('Welcome: ' || p_pass || 'Cookie: ' || rec_cur.cookie);
ELSE
dbms_output.put_line(lv_check_txt);
END IF;
END LOOP;
END member_ck_sp;