source: music/triggers/normalize_and_validate_customer_email.sql

Last change on this file was 77b2536, checked in by ManuelTrajcev <manueltrajcev7@…>, 2 weeks ago

email validation

  • Property mode set to 100644
File size: 467 bytes
Line 
1CREATE OR REPLACE FUNCTION normalize_and_validate_customer_email()
2RETURNS TRIGGER AS $$
3BEGIN
4 NEW.email := LOWER(NEW.email);
5
6 IF NEW.email !~* '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$' THEN
7 RAISE EXCEPTION 'Invalid email format: %', NEW.email;
8 END IF;
9
10 RETURN NEW;
11END;
12$$ LANGUAGE plpgsql;
13
14CREATE TRIGGER trg_normalize_validate_email
15BEFORE INSERT ON customer
16FOR EACH ROW
17EXECUTE FUNCTION normalize_and_validate_customer_email();
Note: See TracBrowser for help on using the repository browser.