Skip to content
Snippets Groups Projects
Commit 4636fe48 authored by felmer's avatar felmer
Browse files

database schema 006 modified for LMS-1707 and LMS-1708

SVN: 17515
parent 4508f3a0
No related branches found
No related tags found
No related merge requests found
......@@ -82,7 +82,8 @@ CREATE INDEX DATA_SETS_CONT_IDX ON DATA_SETS(CONT_ID);
CREATE TABLE CHANNELS (
ID BIGSERIAL NOT NULL,
NAME NAME NOT NULL,
CODE NAME NOT NULL,
LABEL NAME NOT NULL,
DESCRIPTION DESCRIPTION,
WAVELENGTH INTEGER,
......@@ -94,8 +95,8 @@ CREATE TABLE CHANNELS (
CONSTRAINT FK_CHANNELS_2 FOREIGN KEY (EXP_ID) REFERENCES EXPERIMENTS (ID) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT CHANNELS_DS_EXP_ARC_CK CHECK ((DS_ID IS NOT NULL AND EXP_ID IS NULL) OR (DS_ID IS NULL AND EXP_ID IS NOT NULL)),
CONSTRAINT CHANNELS_UK_1 UNIQUE(NAME, DS_ID),
CONSTRAINT CHANNELS_UK_2 UNIQUE(NAME, EXP_ID)
CONSTRAINT CHANNELS_UK_1 UNIQUE(CODE, DS_ID),
CONSTRAINT CHANNELS_UK_2 UNIQUE(CODE, EXP_ID)
);
CREATE INDEX CHANNELS_DS_IDX ON CHANNELS(DS_ID);
......@@ -166,15 +167,14 @@ CREATE TABLE FEATURE_DEFS (
ID BIGSERIAL NOT NULL,
CODE NAME NOT NULL,
NAME NAME NOT NULL,
LABEL NAME NOT NULL,
DESCRIPTION DESCRIPTION,
DS_ID TECH_ID NOT NULL,
PRIMARY KEY (ID),
CONSTRAINT FK_FEATURE_DEFS_1 FOREIGN KEY (DS_ID) REFERENCES DATA_SETS (ID) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT FEATURE_DEFS_UK_1 UNIQUE(NAME, DS_ID)
CONSTRAINT FEATURE_DEFS_UK_2 UNIQUE(CODE, DS_ID)
CONSTRAINT FEATURE_DEFS_UK_1 UNIQUE(CODE, DS_ID)
);
CREATE INDEX FEATURE_DEFS_DS_IDX ON FEATURE_DEFS(DS_ID);
......
-- Migration from 005 to 006
ALTER TABLE FEATURE_DEFS ADD COLUMN CODE NAME;
ALTER TABLE CHANNELS ADD COLUMN CODE NAME;
ALTER TABLE CHANNELS DROP CONSTRAINT CHANNELS_UK_1;
ALTER TABLE CHANNELS DROP CONSTRAINT CHANNELS_UK_2;
UPDATE CHANNELS SET CODE = regexp_replace(upper(NAME), '[^A-Z0-9]', '_', 'g');
ALTER TABLE CHANNELS RENAME COLUMN NAME TO LABEL;
ALTER TABLE CHANNELS ALTER COLUMN CODE SET NOT NULL;
ALTER TABLE CHANNELS ADD CONSTRAINT CHANNELS_UK_1 UNIQUE(CODE, DS_ID);
ALTER TABLE CHANNELS ADD CONSTRAINT CHANNELS_UK_2 UNIQUE(CODE, EXP_ID);
ALTER TABLE FEATURE_DEFS ADD COLUMN CODE NAME;
ALTER TABLE FEATURE_DEFS DROP CONSTRAINT FEATURE_DEFS_UK_1;
UPDATE FEATURE_DEFS SET CODE = regexp_replace(upper(NAME), '[^A-Z0-9]', '_', 'g');
ALTER TABLE FEATURE_DEFS RENAME COLUMN NAME TO LABEL;
ALTER TABLE FEATURE_DEFS ALTER COLUMN CODE SET NOT NULL;
ALTER TABLE FEATURE_DEFS ADD CONSTRAINT FEATURE_DEFS_UK_2 UNIQUE(CODE, DS_ID);
ALTER TABLE FEATURE_DEFS ADD CONSTRAINT FEATURE_DEFS_UK_1 UNIQUE(CODE, DS_ID);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment