1
このトリガは、今日の日付よりもdobのあるレコードを挿入して挿入し、今日の日付よりもdobの少ないレコードを挿入するときに例外を発生させるためのものです。トリガエラー - postgresql
私はこれをやった:
私は「2018年9月9日」DOBにデータを挿入、私は正しいことをして何を今日より前でなければならない誕生日を "例外を取得/* This checks that the dob is before today's date and throws an exception if not */
CREATE FUNCTION check_dateofbirth() RETURNS trigger AS $check_dateofbirth$
DECLARE dob date;
BEGIN
SELECT passenger.dob INTO dob
FROM passenger
WHERE passengerid = passengerid;
IF dob > now() THEN
RAISE EXCEPTION 'Date of birth must be earlier than today';
END IF;
RETURN NEW;
END;
$check_dateofbirth$ LANGUAGE plpgsql;
/* this is used to run the function above */
CREATE TRIGGER insert_dateofbirth
BEFORE INSERT OR UPDATE ON passenger
FOR EACH ROW EXECUTE PROCEDURE check_dateofbirth();
が欲しいです。しかし、私が '1996-09-15'としてdobを使ってデータを挿入すると、dobが今日より早く挿入されるため、間違った例外が発生します。エラーは私のdobのフォーマットと関係がありますか? yyyy/mm/ddの代わりにdd/mm/yyyyにする必要がありますか?