· 8 years ago · Aug 01, 2018, 02:16 AM
1CREATE TABLE IF NOT EXISTS order
2(
3 id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
4 name VARCHAR(15) NOT NULL,
5
6 PRIMARY KEY (id),
7 UNIQUE KEY (name)
8);
9
10CREATE TABLE IF NOT EXISTS status
11(
12 id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
13 name VARCHAR(15) NOT NULL,
14
15 PRIMARY KEY (id),
16 UNIQUE KEY (name)
17);
18
19CREATE TABLE IF NOT EXISTS order_status_date
20(
21 order_id INTEGER UNSIGNED NOT NULL,
22 status_id INTEGER UNSIGNED NOT NULL,
23 event_date DATE NOT NULL,
24
25 PRIMARY KEY (order_id, status_id, event_date),
26 UNIQUE KEY (event_date, status_id, order_id),
27 FOREIGN KEY (order_id) REFERENCES order (id),
28 FOREIGN KEY (status_id) REFERENCES status (id)
29);