-- schema version 41 to 42 ALTER TABLE member ADD COLUMN ooc_id TEXT CHECK (ooc_id REGEXP '^[0-9]{3}-[0-9]{7}$') DEFAULT NULL; ALTER TABLE member ADD COLUMN org_auth_code TEXT CHECK (org_auth_code REGEXP '^[A-Z]{2}-[A-ZÖØ]{3}-[0-9]{2,3}(-[A-Z]{2})?$') DEFAULT NULL; ALTER TABLE wine_cultivation ADD COLUMN organic INTEGER NOT NULL CHECK (organic IN (TRUE, FALSE)) DEFAULT FALSE; ALTER TABLE member_history RENAME COLUMN signed TO signed_member; ALTER TABLE member_history ADD COLUMN signed_company INTEGER NOT NULL CHECK (signed_company IN (TRUE, FALSE)) DEFAULT FALSE; -- FIXME UPDATE member SET org_auth_code = UPPER(SUBSTR(a.name, -11, 10)) FROM member m JOIN member_billing_address a ON a.mgnr = m.mgnr WHERE a.name LIKE '%AT-BIO-___)'; UPDATE member SET org_auth_code = UPPER(suffix) WHERE suffix LIKE 'AT-BIO-___'; UPDATE wine_cultivation SET organic = TRUE WHERE name LIKE '%bio%' OR name LIKE '%org%' OR description LIKE '%AT-BIO-%'; UPDATE wine_cultivation SET description = NULL WHERE description LIKE '%AT-BIO-%'; UPDATE wine_cultivation SET description = 'Biologische Produktion' WHERE organic; UPDATE client_parameter SET param = 'CLIENT_ORGANIC_AUTHORITYCODE' WHERE param = 'CLIENT_ORGANIC_AUTHORITY'; UPDATE member_telephone_number SET comment = NULL WHERE comment = ''; UPDATE member_email_address SET comment = NULL WHERE comment = ''; UPDATE member SET address = REPLACE(REPLACE(REPLACE(address, 'tr.', 'traße'), 'Gr. ', 'Groß-'), 'Kl. ', 'Klein-') WHERE address LIKE 'Kl. %' OR address LIKE 'Gr. %' OR address LIKE '%str.%'; UPDATE member_billing_address SET address = REPLACE(REPLACE(REPLACE(address, 'tr.', 'traße'), 'Gr. ', 'Groß-'), 'Kl. ', 'Klein-') WHERE address LIKE 'Kl. %' OR address LIKE 'Gr. %' OR address LIKE '%str.%'; UPDATE member SET address = REPLACE(address, 'Nr.', (SELECT o.name FROM AT_plz_dest p JOIN AT_ort o ON o.okz = p.okz WHERE p.id = member.postal_dest)) WHERE address LIKE 'Nr. %'; UPDATE member_billing_address SET address = REPLACE(address, 'Nr.', (SELECT o.name FROM AT_plz_dest p JOIN AT_ort o ON o.okz = p.okz WHERE p.id = member_billing_address.postal_dest)) WHERE address LIKE 'Nr. %'; -- TODO Wienerstraße -> Wiener Straße (Kellerstraße -/> Keller Straße!)