Я пытаюсь создать функцию, которая вставляет нового человека из таблицы и проверяет пол человека (должен быть «мужской» или «женский»). Я знаю, как создать функцию, которая вставляет нового человека, и я знаю, как создать функцию, которая вызывает исключение, если пол теперь мужской или женский. Но я не знаю, как сделать это в одной функции и без использования триггера.
У меня уже есть что-то вроде этого:
CREATE OR REPLACE FUNCTION InsertPerson(IN _id INTEGER, IN _name VARCHAR(50), IN _gender CHAR(1))
RETURNS void
AS
$$
BEGIN
IF NEW.gender <> 'Female' AND NEW.gender <> 'Male' THEN
RAISE EXCEPTION 'Gender must be either Female or Male';
END IF;
INSERT INTO Person (ID, name, gender)
VALUES(_id, _name, _gender);
END;
$$ LANGUAGE plpgsql;
Может кто-нибудь, пожалуйста, помогите мне