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

« back to all changes in this revision

Viewing changes to userdb/users.sql

  • Committer: William Grant
  • Date: 2010-07-29 11:34:44 UTC
  • Revision ID: grantw@unimelb.edu.au-20100729113444-ht6s5kdcixvfubhr
Merge video and audio handlers, and reword them.

Show diffs side-by-side

added added

removed removed

Lines of Context:
51
51
 
52
52
CREATE TABLE semester (
53
53
    semesterid  SERIAL PRIMARY KEY NOT NULL,
54
 
    year        CHAR(4) NOT NULL CHECK (valid_url_name(year)),
55
 
    semester    CHAR(1) NOT NULL CHECK (valid_url_name(semester)),
 
54
    year        TEXT NOT NULL CHECK (valid_url_name(year)),
 
55
    url_name    TEXT NOT NULL CHECK (valid_url_name(url_name)),
 
56
    code        TEXT NOT NULL,
 
57
    display_name TEXT NOT NULL,
56
58
    state       TEXT NOT NULL CHECK (state IN ('disabled', 'past',
57
59
                                    'current', 'future')) DEFAULT 'current',
58
 
    UNIQUE (year, semester)
 
60
    UNIQUE (year, url_name),
 
61
    UNIQUE (year, code)
59
62
);
60
63
 
61
64
CREATE TABLE offering (
183
186
        OR (loginid IS NULL AND groupid IS NOT NULL))
184
187
);
185
188
 
 
189
-- We must use conditional constraints here -- NULL != NULL.
 
190
CREATE UNIQUE INDEX assessed_loginid_key ON assessed(loginid, projectid) WHERE loginid IS NOT NULL;
 
191
CREATE UNIQUE INDEX assessed_groupid_key ON assessed(groupid, projectid) WHERE groupid IS NOT NULL;
 
192
 
186
193
CREATE TABLE project_extension (
187
194
    extensionid SERIAL PRIMARY KEY,
188
195
    assessedid  INT4 REFERENCES assessed (assessedid) NOT NULL,
189
 
    deadline    TIMESTAMP NOT NULL,
 
196
    days        INT NOT NULL,
190
197
    approver    INT4 REFERENCES login (loginid) NOT NULL,
191
198
    notes       VARCHAR
192
199
);