Skip to content

Commit 8403145

Browse files
authored
Translated postgresql migration scripts to SQL Server up to v2.10 (#2238)
1 parent f46d2ca commit 8403145

4 files changed

Lines changed: 346 additions & 0 deletions

File tree

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
INSERT INTO ${ohdsiSchema}.sec_permission(id, value, description)
2+
VALUES
3+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'tag:get', 'List tags'),
4+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'tag:search:get', 'Search tags by name'),
5+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'tag:post', 'Create tag'),
6+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'tag:*:put', 'Update tag'),
7+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'tag:*:get', 'Get tag'),
8+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'tag:*:delete', 'Delete tag'),
9+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:tag:post', 'Assign tag to cohort definition'),
10+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:tag:*:delete', 'Unassign tag from cohort definition'),
11+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:protectedtag:post','Assign tag to cohort definition'),
12+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:protectedtag:*:delete','Unassign tag from cohort definition'),
13+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:tag:post','Assign tag to cohort definition'),
14+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:tag:*:delete','Unassign tag from cohort definition'),
15+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:protectedtag:post','Assign tag to cohort definition'),
16+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:protectedtag:*:delete','Unassign tag from cohort definition'),
17+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:check:post','Unassign tag from cohort definition'),
18+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:tag:post','Assign tag to cohort definition'),
19+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:tag:*:delete','Unassign tag from cohort definition'),
20+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:protectedtag:post','Assign tag to cohort definition'),
21+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:protectedtag:*:delete','Unassign tag from cohort definition'),
22+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:tag:post','Assign tag to cohort definition'),
23+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:tag:*:delete','Unassign tag from cohort definition'),
24+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:protectedtag:post','Assign tag to cohort definition'),
25+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:protectedtag:*:delete','Unassign tag from cohort definition'),
26+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:tag:post','Assign tag to cohort definition'),
27+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:tag:*:delete','Unassign tag from cohort definition'),
28+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:protectedtag:post','Assign tag to cohort definition'),
29+
(NEXT VALUE FOR ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:protectedtag:*:delete','Unassign tag from cohort definition')
30+
;
31+
32+
33+
INSERT INTO ${ohdsiSchema}.sec_role_permission(role_id, permission_id)
34+
SELECT sr.id, sp.id
35+
FROM ${ohdsiSchema}.sec_permission sp,
36+
${ohdsiSchema}.sec_role sr
37+
WHERE sp.value IN (
38+
'tag:get',
39+
'tag:search:get',
40+
'tag:post',
41+
'tag:*:put',
42+
'tag:*:get',
43+
'tag:*:delete',
44+
'cohortdefinition:*:tag:post',
45+
'cohortdefinition:*:tag:*:delete',
46+
'conceptset:*:tag:post',
47+
'conceptset:*:tag:*:delete',
48+
'conceptset:check:post',
49+
'cohort-characterization:*:tag:post',
50+
'cohort-characterization:*:tag:*:delete',
51+
'ir:*:tag:post',
52+
'ir:*:tag:*:delete',
53+
'pathway-analysis:*:tag:post',
54+
'pathway-analysis:*:tag:*:delete')
55+
AND sr.name IN ('Atlas users');
56+
57+
INSERT INTO ${ohdsiSchema}.sec_role_permission(role_id, permission_id)
58+
SELECT sr.id, sp.id
59+
FROM ${ohdsiSchema}.sec_permission sp,
60+
${ohdsiSchema}.sec_role sr
61+
WHERE sp.value IN (
62+
'cohortdefinition:*:protectedtag:post',
63+
'cohortdefinition:*:protectedtag:*:delete',
64+
'conceptset:*:protectedtag:post',
65+
'conceptset:*:protectedtag:*:delete',
66+
'cohort-characterization:*:protectedtag:post',
67+
'cohort-characterization:*:protectedtag:*:delete',
68+
'ir:*:protectedtag:post',
69+
'ir:*:protectedtag:*:delete',
70+
'pathway-analysis:*:protectedtag:post',
71+
'pathway-analysis:*:protectedtag:*:delete')
72+
AND sr.name IN ('admin');
73+
74+
75+
CREATE SEQUENCE ${ohdsiSchema}.tags_seq;
76+
77+
-- Possible types are:
78+
-- 0 - System (predefined) tags
79+
-- 1 - Custom tags
80+
-- 2 - Prizm tags
81+
CREATE TABLE ${ohdsiSchema}.tags
82+
(
83+
id INTEGER DEFAULT NEXT VALUE FOR ${ohdsiSchema}.tags_seq,
84+
name VARCHAR(50) NOT NULL,
85+
type INT NOT NULL DEFAULT 0,
86+
count INT NOT NULL DEFAULT 0,
87+
show_group BIT NOT NULL DEFAULT 0,
88+
icon VARCHAR(100) NULL,
89+
color VARCHAR(7) NULL,
90+
multi_selection BIT NOT NULL DEFAULT 0,
91+
permission_protected BIT NOT NULL DEFAULT 0,
92+
mandatory BIT NOT NULL DEFAULT 0,
93+
allow_custom BIT NOT NULL DEFAULT 0,
94+
description VARCHAR(MAX) NULL,
95+
created_by_id INTEGER,
96+
created_date DATETIME NOT NULL DEFAULT SYSDATETIMEOFFSET(),
97+
modified_by_id INTEGER,
98+
modified_date DATETIME,
99+
CONSTRAINT pk_tags_id PRIMARY KEY (id),
100+
CONSTRAINT fk_tags_sec_user_creator FOREIGN KEY (created_by_id) REFERENCES ${ohdsiSchema}.sec_user (id),
101+
CONSTRAINT fk_tags_sec_user_updater FOREIGN KEY (modified_by_id) REFERENCES ${ohdsiSchema}.sec_user (id)
102+
);
103+
104+
CREATE UNIQUE INDEX tags_name_idx ON ${ohdsiSchema}.tags (name);
105+
106+
CREATE TABLE ${ohdsiSchema}.tag_groups
107+
(
108+
tag_id INT NOT NULL,
109+
group_id INT NOT NULL,
110+
CONSTRAINT tag_groups_group_fk FOREIGN KEY (group_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE,
111+
CONSTRAINT tag_groups_tag_fk FOREIGN KEY (tag_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE
112+
);
113+
114+
CREATE TABLE ${ohdsiSchema}.concept_set_tags
115+
(
116+
asset_id INT NOT NULL,
117+
tag_id INT NOT NULL,
118+
CONSTRAINT pk_concept_set_tags_id PRIMARY KEY (asset_id, tag_id),
119+
CONSTRAINT concept_set_tags_fk_sets FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.concept_set (concept_set_id) ON DELETE NO ACTION, --CHANGE ON DELETE ACTION BECAUSE OF ERROR
120+
CONSTRAINT concept_set_tags_fk_tags FOREIGN KEY (tag_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE
121+
);
122+
123+
CREATE INDEX concept_set_tags_concept_id_idx ON ${ohdsiSchema}.concept_set_tags (asset_id);
124+
CREATE INDEX concept_set_tags_tag_id_idx ON ${ohdsiSchema}.concept_set_tags (tag_id);
125+
126+
CREATE TABLE ${ohdsiSchema}.cohort_tags
127+
(
128+
asset_id INT NOT NULL,
129+
tag_id INT NOT NULL,
130+
CONSTRAINT pk_cohort_tags_id PRIMARY KEY (asset_id, tag_id),
131+
CONSTRAINT cohort_tags_fk_definitions FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.cohort_definition (id) ON DELETE CASCADE,
132+
CONSTRAINT cohort_tags_fk_tags FOREIGN KEY (tag_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE
133+
);
134+
135+
CREATE INDEX cohort_tags_cohort_id_idx ON ${ohdsiSchema}.cohort_tags (asset_id);
136+
CREATE INDEX cohort_tags_tag_id_idx ON ${ohdsiSchema}.cohort_tags (tag_id);
137+
138+
CREATE TABLE ${ohdsiSchema}.cohort_characterization_tags
139+
(
140+
asset_id bigint NOT NULL,
141+
tag_id INT NOT NULL,
142+
CONSTRAINT pk_cc_tags_id PRIMARY KEY (asset_id, tag_id),
143+
CONSTRAINT cc_tags_fk_ccs FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.cohort_characterization (id) ON DELETE CASCADE,
144+
CONSTRAINT cc_tags_fk_tags FOREIGN KEY (tag_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE
145+
);
146+
147+
CREATE INDEX cc_tags_cc_id_idx ON ${ohdsiSchema}.cohort_characterization_tags (asset_id);
148+
CREATE INDEX cc_tags_tag_id_idx ON ${ohdsiSchema}.cohort_characterization_tags (tag_id);
149+
150+
CREATE TABLE ${ohdsiSchema}.ir_tags
151+
(
152+
asset_id INT NOT NULL,
153+
tag_id INT NOT NULL,
154+
CONSTRAINT pk_ir_tags_id PRIMARY KEY (asset_id, tag_id),
155+
CONSTRAINT ir_tags_fk_irs FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.ir_analysis (id) ON DELETE CASCADE,
156+
CONSTRAINT ir_tags_fk_tags FOREIGN KEY (tag_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE
157+
);
158+
159+
CREATE INDEX ir_tags_ir_id_idx ON ${ohdsiSchema}.ir_tags (asset_id);
160+
CREATE INDEX ir_tags_tag_id_idx ON ${ohdsiSchema}.ir_tags (tag_id);
161+
162+
CREATE TABLE ${ohdsiSchema}.pathway_tags
163+
(
164+
asset_id INT NOT NULL,
165+
tag_id INT NOT NULL,
166+
CONSTRAINT pk_pathway_tags_id PRIMARY KEY (asset_id, tag_id),
167+
CONSTRAINT pathway_tags_fk_irs FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.pathway_analysis (id) ON DELETE CASCADE,
168+
CONSTRAINT pathway_tags_fk_tags FOREIGN KEY (tag_id) REFERENCES ${ohdsiSchema}.tags (id) ON DELETE CASCADE
169+
);
170+
171+
CREATE INDEX pathway_tags_pathway_id_idx ON ${ohdsiSchema}.pathway_tags (asset_id);
172+
CREATE INDEX pathway_tags_tag_id_idx ON ${ohdsiSchema}.pathway_tags (tag_id);
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
INSERT INTO ${ohdsiSchema}.sec_permission(id, value, description)
2+
VALUES
3+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:version:get','Get list of cohort versions'),
4+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:version:*:get','Get cohort version'),
5+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:version:*:put','Update cohort version info'),
6+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:version:*:delete','Delete cohort version info'),
7+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohortdefinition:*:version:*:createAsset:put','Copy cohort version as new cohort'),
8+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:get','Get list of concept set versions'),
9+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:*:get','Get concept set version'),
10+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:*:put','Update concept set version info'),
11+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:*:delete','Delete concept set version info'),
12+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:*:createAsset:put','Copy concept set version as new concept set'),
13+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:*:expression:get','Get expression for concept set items for default source'),
14+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'conceptset:*:version:*:expression:*:get','Get expression for concept set items for certain source'),
15+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:version:get','Get list of characterization versions'),
16+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:version:*:get','Get characterization version'),
17+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:version:*:put','Update characterization version info'),
18+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:version:*:delete','Delete characterization version info'),
19+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'cohort-characterization:*:version:*:createAsset:put','Copy characterization version as new cohort'),
20+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:version:get','Get list of incidence rate analysis versions'),
21+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:version:*:get','Get incidence rate analysis version'),
22+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:version:*:put','Update incidence rate analysis version info'),
23+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:version:*:delete','Delete incidence rate analysis version info'),
24+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'ir:*:version:*:createAsset:put','Copy incidence rate analysis version as new cohort'),
25+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:version:get','Get list of pathway analysis versions'),
26+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:version:*:get','Get pathway analysis version'),
27+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:version:*:put','Update pathway analysis version info'),
28+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:version:*:delete','Delete pathway analysis version info'),
29+
(NEXT VALUE for ${ohdsiSchema}.sec_permission_id_seq, 'pathway-analysis:*:version:*:createAsset:put','Copy pathway analysis version as new cohort');
30+
31+
INSERT INTO ${ohdsiSchema}.sec_role_permission(role_id, permission_id)
32+
SELECT sr.id, sp.id
33+
FROM ${ohdsiSchema}.sec_permission SP,
34+
${ohdsiSchema}.sec_role sr
35+
WHERE sp.value IN (
36+
'cohortdefinition:*:version:get',
37+
'cohortdefinition:*:version:*:get',
38+
'cohortdefinition:*:version:*:put',
39+
'cohortdefinition:*:version:*:delete',
40+
'cohortdefinition:*:version:*:createAsset:put',
41+
'conceptset:*:version:get',
42+
'conceptset:*:version:*:get',
43+
'conceptset:*:version:*:put',
44+
'conceptset:*:version:*:delete',
45+
'conceptset:*:version:*:createAsset:put',
46+
'conceptset:*:version:*:expression:get',
47+
'conceptset:*:version:*:expression:*:get',
48+
'cohort-characterization:*:version:get',
49+
'cohort-characterization:*:version:*:get',
50+
'cohort-characterization:*:version:*:put',
51+
'cohort-characterization:*:version:*:delete',
52+
'cohort-characterization:*:version:*:createAsset:put',
53+
'ir:*:version:get',
54+
'ir:*:version:*:get',
55+
'ir:*:version:*:put',
56+
'ir:*:version:*:delete',
57+
'ir:*:version:*:createAsset:put',
58+
'pathway-analysis:*:version:get',
59+
'pathway-analysis:*:version:*:get',
60+
'pathway-analysis:*:version:*:put',
61+
'pathway-analysis:*:version:*:delete',
62+
'pathway-analysis:*:version:*:createAsset:put')
63+
AND sr.name IN ('Atlas users');
64+
65+
-- Cohorts
66+
CREATE TABLE ${ohdsiSchema}.cohort_version
67+
(
68+
asset_id INT NOT NULL,
69+
comment VARCHAR(MAX) NULL,
70+
description VARCHAR(MAX) NULL,
71+
version INT NOT NULL DEFAULT 1,
72+
asset_json VARCHAR(MAX) NOT NULL,
73+
archived BIT NOT NULL DEFAULT 0,
74+
created_by_id INTEGER,
75+
created_date DATETIME NOT NULL DEFAULT (SYSDATETIMEOFFSET()),
76+
CONSTRAINT pk_cohort_version_id PRIMARY KEY (asset_id, version),
77+
CONSTRAINT fk_cohort_version_sec_user_creator FOREIGN KEY (created_by_id) REFERENCES ${ohdsiSchema}.sec_user (id),
78+
CONSTRAINT fk_cohort_version_asset_id FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.cohort_definition (id) ON DELETE CASCADE
79+
);
80+
81+
CREATE INDEX cohort_version_asset_idx ON ${ohdsiSchema}.cohort_version (asset_id);
82+
83+
-- Cohort characterizations
84+
CREATE TABLE ${ohdsiSchema}.cohort_characterization_version
85+
(
86+
asset_id bigint NOT NULL,
87+
comment VARCHAR(MAX) NULL,
88+
version INT NOT NULL DEFAULT 1,
89+
asset_json VARCHAR(MAX) NOT NULL,
90+
archived BIT NOT NULL DEFAULT 0,
91+
created_by_id INTEGER,
92+
created_date DATETIME NOT NULL DEFAULT (SYSDATETIMEOFFSET()),
93+
CONSTRAINT pk_cc_version_id PRIMARY KEY (asset_id, version),
94+
CONSTRAINT fk_cc_version_sec_user_creator FOREIGN KEY (created_by_id) REFERENCES ${ohdsiSchema}.sec_user (id),
95+
CONSTRAINT fk_cc_version_asset_id FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.cohort_characterization (id) ON DELETE CASCADE
96+
);
97+
98+
CREATE INDEX cc_version_asset_idx ON ${ohdsiSchema}.cohort_characterization_version (asset_id);
99+
100+
-- Concept sets
101+
CREATE TABLE ${ohdsiSchema}.concept_set_version
102+
(
103+
asset_id INT NOT NULL,
104+
comment VARCHAR(MAX) NULL,
105+
version INT NOT NULL DEFAULT 1,
106+
asset_json VARCHAR(MAX) NOT NULL,
107+
archived BIT NOT NULL DEFAULT 0,
108+
created_by_id INTEGER,
109+
created_date DATETIME NOT NULL DEFAULT (SYSDATETIMEOFFSET()),
110+
CONSTRAINT pk_concept_set_version_id PRIMARY KEY (asset_id, version),
111+
CONSTRAINT fk_concept_set_version_sec_user_creator FOREIGN KEY (created_by_id) REFERENCES ${ohdsiSchema}.sec_user (id),
112+
CONSTRAINT fk_concept_set_version_asset_id FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.concept_set (concept_set_id) ON DELETE CASCADE
113+
);
114+
115+
CREATE INDEX concept_set_version_asset_idx ON ${ohdsiSchema}.concept_set_version (asset_id);
116+
117+
-- Incidence rates
118+
CREATE TABLE ${ohdsiSchema}.ir_version
119+
(
120+
asset_id INT NOT NULL,
121+
comment VARCHAR(MAX) NULL,
122+
description VARCHAR(MAX) NULL,
123+
version INT NOT NULL DEFAULT 1,
124+
asset_json VARCHAR(MAX) NOT NULL,
125+
archived BIT NOT NULL DEFAULT 0,
126+
created_by_id INTEGER,
127+
created_date DATETIME NOT NULL DEFAULT (SYSDATETIMEOFFSET()),
128+
CONSTRAINT pk_ir_version_id PRIMARY KEY (asset_id, version),
129+
CONSTRAINT fk_ir_version_sec_user_creator FOREIGN KEY (created_by_id) REFERENCES ${ohdsiSchema}.sec_user (id),
130+
CONSTRAINT fk_ir_version_asset_id FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.ir_analysis (id) ON DELETE CASCADE
131+
);
132+
133+
CREATE INDEX ir_version_asset_idx ON ${ohdsiSchema}.ir_version (asset_id);
134+
135+
-- Pathways
136+
CREATE TABLE ${ohdsiSchema}.pathway_version
137+
(
138+
asset_id INT NOT NULL,
139+
comment VARCHAR(MAX) NULL,
140+
version INT NOT NULL DEFAULT 1,
141+
asset_json VARCHAR(MAX) NOT NULL,
142+
archived BIT NOT NULL DEFAULT 0,
143+
created_by_id INTEGER,
144+
created_date DATETIME NOT NULL DEFAULT (SYSDATETIMEOFFSET()),
145+
CONSTRAINT pk_pathway_version_id PRIMARY KEY (asset_id, version),
146+
CONSTRAINT fk_pathway_version_sec_user_creator FOREIGN KEY (created_by_id) REFERENCES ${ohdsiSchema}.sec_user (id),
147+
CONSTRAINT fk_pathway_version_asset_id FOREIGN KEY (asset_id) REFERENCES ${ohdsiSchema}.pathway_analysis (id) ON DELETE CASCADE
148+
);
149+
150+
CREATE INDEX pathway_version_asset_idx ON ${ohdsiSchema}.pathway_version (asset_id);

0 commit comments

Comments
 (0)