~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to userdb/migrations/20090212-01.sql

Minor updates to the sql for the userdb

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
DROP TABLE problem;
24
24
DROP TABLE worksheet;
25
25
 
26
 
CREATE TABLE exercise (
 
26
CREATE TABLE problem (
27
27
    identifier  TEXT PRIMARY KEY,
28
28
    name        TEXT,
29
29
    description TEXT,
36
36
CREATE TABLE worksheet (
37
37
    worksheetid SERIAL PRIMARY KEY,
38
38
    offeringid  INT4 REFERENCES offering (offeringid) NOT NULL,
39
 
    identifier  TEXT NOT NULL,
40
 
    name        TEXT NOT NULL,
41
 
    data        TEXT NOT NULL,
42
 
    assessable  BOOLEAN NOT NULL,
43
 
    seq_no      INT4 NOT NULL,
44
 
    format      TEXT NOT NUll,
 
39
    identifier  VARCHAR NOT NULL,
 
40
    assessable  BOOLEAN,
 
41
    mtime       TIMESTAMP,
45
42
    UNIQUE (offeringid, identifier)
46
43
);
47
44
 
48
 
CREATE TABLE worksheet_exercise (
49
 
    ws_ex_id        SERIAL PRIMARY KEY,
50
 
    worksheetid     INT4 REFERENCES worksheet (worksheetid) NOT NULL,
51
 
    exerciseid      TEXT REFERENCES exercise (identifier) NOT NULL,
52
 
    seq_no          INT4 NOT NULL,
53
 
    active          BOOLEAN NOT NULL DEFAULT true,
54
 
    optional        BOOLEAN NOT NULL,
55
 
    UNIQUE (worksheetid, exerciseid)
 
45
CREATE TABLE worksheet_problem (
 
46
    worksheetid INT4 REFERENCES worksheet (worksheetid) NOT NULL,
 
47
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
 
48
    optional    BOOLEAN,
 
49
    PRIMARY KEY (worksheetid, problemid)
56
50
);
57
51
 
58
 
CREATE TABLE exercise_attempt (
 
52
CREATE TABLE problem_attempt (
 
53
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
59
54
    loginid     INT4 REFERENCES login (loginid) NOT NULL,
60
 
    ws_ex_id    INT4 REFERENCES worksheet_exercise (ws_ex_id) NOT NULL,
 
55
    worksheetid INT4 REFERENCES worksheet (worksheetid) NOT NULL,
61
56
    date        TIMESTAMP NOT NULL,
62
 
    attempt     TEXT NOT NULL,
 
57
    attempt     VARCHAR NOT NULL,
63
58
    complete    BOOLEAN NOT NULL,
64
59
    active      BOOLEAN NOT NULL DEFAULT true,
65
 
    PRIMARY KEY (loginid, ws_ex_id, date)
 
60
    PRIMARY KEY (problemid,loginid,worksheetid,date)
66
61
);
67
62
 
68
 
CREATE TABLE exercise_save (
 
63
CREATE TABLE problem_save (
 
64
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
69
65
    loginid     INT4 REFERENCES login (loginid) NOT NULL,
70
 
    ws_ex_id    INT4 REFERENCES worksheet_exercise (ws_ex_id) NOT NULL,
 
66
    worksheetid INT4 REFERENCES worksheet (worksheetid) NOT NULL,
71
67
    date        TIMESTAMP NOT NULL,
72
68
    text        TEXT NOT NULL,
73
 
    PRIMARY KEY (loginid, ws_ex_id)
 
69
    PRIMARY KEY (problemid,loginid, worksheetid)
74
70
);
75
71
 
76
72
CREATE TABLE test_suite (
77
73
    suiteid     SERIAL PRIMARY KEY,
78
 
    exerciseid  TEXT REFERENCES exercise (identifier) NOT NULL,
 
74
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
79
75
    description TEXT,
80
76
    seq_no      INT4,
81
77
    function    TEXT,
91
87
    seq_no          INT4
92
88
);
93
89
 
94
 
CREATE TABLE suite_variable (
 
90
CREATE TABLE suite_variables (
95
91
    varid       SERIAL PRIMARY KEY,
96
92
    suiteid     INT4 REFERENCES test_suite (suiteid) NOT NULL,
97
93
    var_name    TEXT,
100
96
    arg_no      INT4
101
97
);
102
98
 
103
 
CREATE TABLE test_case_part (
 
99
CREATE TABLE test_case_parts (
104
100
    partid          SERIAL PRIMARY KEY,
105
101
    testid          INT4 REFERENCES test_case (testid) NOT NULL,
106
102
    part_type       TEXT NOT NULL,