1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| CREATE TABLE SQ_sequence(
SQ_ident INTEGER,
PRIMARY KEY(SQ_ident)
);
CREATE TABLE SN_session(
SN_ident INTEGER,
PRIMARY KEY(SN_ident)
);
CREATE TABLE US_user(
US_ident INTEGER,
US_nom TEXT NOT NULL,
US_prenom TEXT NOT NULL,
PRIMARY KEY(US_ident)
);
CREATE TABLE SE_selection(
SN_ident INTEGER,
US_ident INTEGER,
SE_ident INTEGER,
SE_date NUMERIC NOT NULL,
PRIMARY KEY(SN_ident, US_ident, SE_ident),
FOREIGN KEY(SN_ident) REFERENCES SN_session(SN_ident),
FOREIGN KEY(US_ident) REFERENCES US_user(US_ident)
);
CREATE TABLE WO_workout(
WO_ident INTEGER,
WO_date NUMERIC NOT NULL,
WO_heure NUMERIC NOT NULL,
SN_ident INTEGER NOT NULL,
US_ident INTEGER NOT NULL,
SE_ident INTEGER NOT NULL,
PRIMARY KEY(WO_ident),
FOREIGN KEY(SN_ident, US_ident, SE_ident) REFERENCES SE_selection(SN_ident, US_ident, SE_ident)
);
CREATE TABLE MS_measure(
WO_ident INTEGER,
MS_ident INTEGER,
PRIMARY KEY(WO_ident, MS_ident),
FOREIGN KEY(WO_ident) REFERENCES WO_workout(WO_ident)
);
CREATE TABLE QN_compose(
SQ_ident INTEGER,
SN_ident INTEGER,
QN_order INTEGER NOT NULL,
PRIMARY KEY(SQ_ident, SN_ident),
UNIQUE(QN_order),
FOREIGN KEY(SQ_ident) REFERENCES SQ_sequence(SQ_ident),
FOREIGN KEY(SN_ident) REFERENCES SN_session(SN_ident)
);
CREATE TABLE UQ_attribuer(
SQ_ident INTEGER,
US_ident INTEGER,
UQ_date NUMERIC NOT NULL,
PRIMARY KEY(SQ_ident, US_ident),
FOREIGN KEY(SQ_ident) REFERENCES SQ_sequence(SQ_ident),
FOREIGN KEY(US_ident) REFERENCES US_user(US_ident)
); |
Partager