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

« back to all changes in this revision

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

  • Committer: Matt Giuca
  • Date: 2009-05-26 04:15:23 UTC
  • mto: This revision was merged to the branch mainline in revision 1322.
  • Revision ID: matt.giuca@gmail.com-20090526041523-hsg5q2enlhvjb5y2
doc/man/architecture.rst: User management server.

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 problem (
 
26
CREATE TABLE exercise (
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  VARCHAR NOT NULL,
40
 
    assessable  BOOLEAN,
41
 
    mtime       TIMESTAMP,
 
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,
42
45
    UNIQUE (offeringid, identifier)
43
46
);
44
47
 
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)
 
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)
50
56
);
51
57
 
52
 
CREATE TABLE problem_attempt (
53
 
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
 
58
CREATE TABLE exercise_attempt (
54
59
    loginid     INT4 REFERENCES login (loginid) NOT NULL,
55
 
    worksheetid INT4 REFERENCES worksheet (worksheetid) NOT NULL,
 
60
    ws_ex_id    INT4 REFERENCES worksheet_exercise (ws_ex_id) NOT NULL,
56
61
    date        TIMESTAMP NOT NULL,
57
 
    attempt     VARCHAR NOT NULL,
 
62
    attempt     TEXT NOT NULL,
58
63
    complete    BOOLEAN NOT NULL,
59
64
    active      BOOLEAN NOT NULL DEFAULT true,
60
 
    PRIMARY KEY (problemid,loginid,worksheetid,date)
 
65
    PRIMARY KEY (loginid, ws_ex_id, date)
61
66
);
62
67
 
63
 
CREATE TABLE problem_save (
64
 
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
 
68
CREATE TABLE exercise_save (
65
69
    loginid     INT4 REFERENCES login (loginid) NOT NULL,
66
 
    worksheetid INT4 REFERENCES worksheet (worksheetid) NOT NULL,
 
70
    ws_ex_id    INT4 REFERENCES worksheet_exercise (ws_ex_id) NOT NULL,
67
71
    date        TIMESTAMP NOT NULL,
68
72
    text        TEXT NOT NULL,
69
 
    PRIMARY KEY (problemid,loginid, worksheetid)
 
73
    PRIMARY KEY (loginid, ws_ex_id)
70
74
);
71
75
 
72
76
CREATE TABLE test_suite (
73
77
    suiteid     SERIAL PRIMARY KEY,
74
 
    problemid   TEXT REFERENCES problem (identifier) NOT NULL,
 
78
    exerciseid  TEXT REFERENCES exercise (identifier) NOT NULL,
75
79
    description TEXT,
76
80
    seq_no      INT4,
77
81
    function    TEXT,
87
91
    seq_no          INT4
88
92
);
89
93
 
90
 
CREATE TABLE suite_variables (
 
94
CREATE TABLE suite_variable (
91
95
    varid       SERIAL PRIMARY KEY,
92
96
    suiteid     INT4 REFERENCES test_suite (suiteid) NOT NULL,
93
97
    var_name    TEXT,
96
100
    arg_no      INT4
97
101
);
98
102
 
99
 
CREATE TABLE test_case_parts (
 
103
CREATE TABLE test_case_part (
100
104
    partid          SERIAL PRIMARY KEY,
101
105
    testid          INT4 REFERENCES test_case (testid) NOT NULL,
102
106
    part_type       TEXT NOT NULL,