changeLogs-preDeploy/createDomains.xml (30 lines of code) (raw):

<?xml version="1.1" encoding="UTF-8" standalone="no"?> <databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.5.xsd http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd"> <changeSet author="registry owner" id="domain dn_passport_num"> <sql dbms="postgresql" endDelimiter=";" splitStatements="false" stripComments="true"> CREATE DOMAIN dn_passport_num CHAR(8) CONSTRAINT passport_number_chk CHECK (VALUE ~ '^[АВЕІКМНОРСТХ]{2}\d{6}$'); <comment>CREATE DOMAIN dn_passport_num</comment> </sql> <rollback> <sql splitStatements="true" stripComments="false"> DROP DOMAIN dn_passport_num; </sql> </rollback> </changeSet> <changeSet author="registry owner" id="domain dn_edrpou"> <sql dbms="postgresql" endDelimiter=";" splitStatements="false" stripComments="true"> CREATE DOMAIN dn_edrpou TEXT CONSTRAINT edrpou_chk CHECK (VALUE ~ '^\d{8}|\d{9}|\d{10}$'); <comment>CREATE DOMAIN dn_edrpou</comment> </sql> <rollback> <sql splitStatements="true" stripComments="false"> DROP DOMAIN dn_edrpou; </sql> </rollback> </changeSet> </databaseChangeLog>