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

« back to all changes in this revision

Viewing changes to userdb/users.sql

  • Committer: stevenbird
  • Date: 2008-01-24 03:29:44 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:281
extensive updates based on data modelling discussion with Tom Conway

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
 
10
10
CREATE TABLE users (
11
11
    login       varchar(80) PRIMARY KEY,    -- login id
12
 
    nick        varchar(80)
 
12
    nick        varchar(80),
 
13
    fullname    varchar(80),
 
14
    studentid   varchar(80) or NULL  ****
13
15
);
14
16
 
15
17
CREATE TABLE groups (
16
 
    groupid     varchar(18) PRIMARY KEY,    -- group name Y^4-S^9-G^3
 
18
    groupid     varchar(18) PRIMARY KEY,    -- group name Y^4-S^9-G^3    **** use offering-id + group number (compound key)
17
19
    nick        varchar(80),                -- group nickname
18
 
    subject     varchar(9),                 -- subject code
 
20
    subject     varchar(9),                 -- subject code         **** use "offerings" table from CASMAS
19
21
    year        varchar(4)                  -- when
20
22
);
21
23
 
27
29
CREATE TABLE enrolment (
28
30
    login       varchar(80) REFERENCES users (login),
29
31
    subject     varchar(9),
 
32
    result
 
33
    supp_result
30
34
    year        varchar(4)
31
35
);
32
36
 
35
39
    role        varchar(8)
36
40
);
37
41
 
 
42
CREATE TABLE project (
 
43
    projectid
 
44
    synopsis
 
45
    url
 
46
    subject
 
47
    deadline
 
48
);
 
49
 
 
50
CREATE TABLE extension (
 
51
    login or groupid
 
52
    projectid
 
53
    deadline
 
54
    approver
 
55
    comment
 
56
);
 
57
 
 
58
CREATE TABLE mark (
 
59
    login or groupid
 
60
    projectid
 
61
    componentid
 
62
    marker
 
63
    mark
 
64
    timestamp
 
65
    feedback
 
66
    comment
 
67
    KEY: (login/groupid, projectid, componentid)
 
68
);
 
69
 
 
70
################
 
71
 
 
72
CREATE TABLE problem (
 
73
    problemid
 
74
    specification
 
75
    test (xml)
 
76
);
 
77
 
 
78
CREATE TABLE problem_tags (
 
79
    problemid
 
80
    tag
 
81
    added_by
 
82
    timestamp
 
83
);
 
84
 
 
85
CREATE TABLE problem_attempt (
 
86
    problemid
 
87
    login
 
88
    datetime
 
89
    submission
 
90
    complete (boolean)
 
91
    KEY: (problemid, login, datetime)
 
92
);
 
93
 
 
94
CREATE INDEX indexname ON problem_attempt (problemid, login);
 
95
 
 
96
CREATE TABLE problem_attempt_breakdown (
 
97
    problemid
 
98
    testcaseid
 
99
    login
 
100
    datetime
 
101
    result (boolean)    **** doesnt tell academic which concepts students are struggling with
 
102
);
 
103
 
 
104
CREATE TABLE problem_test_case (
 
105
    problemid
 
106
    testcaseid
 
107
    testcase (sourced from xml)
 
108
    description
 
109
    visibility
 
110
    tags (xref to tag table; break out)
 
111
);
 
112
 
 
113
# concept, curriculum, difficulty
 
114
CREATE TABLE tag (
 
115
    tag
 
116
    documentation
 
117
    added_by
 
118
    timestamp
 
119
);
 
120
 
 
121
# for multipart problems
 
122
CREATE TABLE prerequisite_problem (
 
123
    parent_problemid
 
124
    child_problemid
 
125
);
 
126
 
 
127
 
 
128
 
38
129
INSERT INTO users (login,nick) values ('conway', 'Tom');
39
130
INSERT INTO roles (login,role) values ('conway', 'student');
40
131
INSERT INTO users (login,nick) values ('apeel', 'Andrew');