Add member_telephone_number table

This commit is contained in:
2023-05-27 13:08:57 +02:00
parent ca5bc50c1e
commit 17ffbf8702
4 changed files with 97 additions and 44 deletions

View File

@ -252,7 +252,9 @@ CREATE TABLE branch (
postal_dest TEXT DEFAULT NULL,
address TEXT DEFAULT NULL,
phone_nr TEXT DEFAULT NULL CHECK (phone_nr REGEXP '^\+[0-9]+$'),
phone_nr TEXT DEFAULT NULL CHECK (phone_nr REGEXP '^\+[0-9]{1,3}( [0-9]+)+(-[0-9]+)?$'),
fax_nr TEXT DEFAULT NULL CHECK (fax_nr REGEXP '^\+[0-9]{1,3}( [0-9]+)+(-[0-9]+)?$'),
mobile_nr TEXT DEFAULT NULL CHECK (mobile_nr REGEXP '^\+[0-9]{1,3}( [0-9]+)+(-[0-9]+)?$'),
CONSTRAINT pk_branch PRIMARY KEY (zwstid),
CONSTRAINT fk_branch_postal_dest FOREIGN KEY (country, postal_dest) REFERENCES postal_dest (country, id)
@ -309,10 +311,6 @@ CREATE TABLE member (
address TEXT NOT NULL,
email TEXT CHECK (email REGEXP '^[^@ ]+@([a-z0-9_\x2Däöüß]+\.)+[a-z]{2,}$') DEFAULT NULL,
phone_landline TEXT CHECK (phone_landline REGEXP '^\+[0-9]+$') DEFAULT NULL,
fax TEXT CHECK (fax REGEXP '^\+[0-9]+$') DEFAULT NULL,
phone_mobile_1 TEXT CHECK (phone_mobile_1 REGEXP '^\+[0-9]+$') DEFAULT NULL,
phone_mobile_2 TEXT CHECK (phone_mobile_2 REGEXP '^\+[0-9]+$') DEFAULT NULL,
default_kgnr INTEGER CHECK (NOT active OR default_kgnr IS NOT NULL),
contact_postal INTEGER NOT NULL CHECK (contact_postal IN (TRUE, FALSE)) DEFAULT TRUE,
@ -354,6 +352,19 @@ CREATE TABLE member_billing_address (
ON DELETE RESTRICT
) STRICT;
CREATE TABLE member_telephone_number (
mgnr INTEGER NOT NULL,
nr INTEGER NOT NULL,
type TEXT NOT NULL CHECK (type REGEXP '^[a-z_]+$'),
number TEXT NOT NULL CHECK (number REGEXP '^\+[0-9]{1,3}( [0-9]+)+(-[0-9]+)?$' AND LENGTH(REPLACE(REPLACE(REPLACE(number, '+', ''), ' ', ''), '-', '')) <= 15),
comment TEXT DEFAULT NULL,
CONSTRAINT pk_member_telephone_number PRIMARY KEY (mgnr, nr),
CONSTRAINT fk_member_telephone_number_member FOREIGN KEY (mgnr) REFERENCES member (mgnr)
ON UPDATE CASCADE
ON DELETE CASCADE
) STRICT;
CREATE TABLE area_commitment (
fbnr INTEGER NOT NULL,
mgnr INTEGER NOT NULL,