現在、従業員のステータスを確認するためにこのコードに取り組んでおり、新しいログイン機能を作成したいと考えています。
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' を返します。これらの最後の 2 つの戻り値をコードに実装する方法がわかりません。どんな助けでも素晴らしいでしょう!