我目前正在处理此代码以检查员工的状态,并且我想创建一个新的登录功能:
create or replace FUNCTION get_status_by_employee_id
(
p_employee_id NUMBER
) RETURN CHAR
AS
v_status employee.status%TYPE;
BEGIN
SELECT status
INTO v_status
FROM employee
WHERE employee_id = p_employee_id;
return v_status;
EXCEPTION
WHEN NO_DATA_FOUND THEN
return 'N';
END get_status_by_employee_id;
员工登录的新功能:
CREATE OR REPLACE FUNCTION employee_login
(
p_employee_id NUMBER,
p_password VARCHAR2
) RETURN CHAR
AS
BEGIN
SELECT employee_id, password
FROM employee
WHERE employee_id = p_employee_id;
EXCEPTION
WHEN NO_DATA_FOUND THEN
return 'N';
END employee_login;
一个示例测试是: SELECT employee_login(2002, 'frw234r')
Employee_Login(2002, 'frw234r')
-------------------------------------
F
就像我上面的第一个函数一样,如果employee_id 不在表中,我想返回'N'。如果employee_id 的值在employee 表中,但与p_password 不匹配,我想返回'F'。最后,如果employee_id 和p_password 匹配,我想返回'Y'。我很困惑如何在我的代码中实现最后两个返回。任何帮助都会很棒!