-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathschema.sql
56 lines (49 loc) · 1.28 KB
/
schema.sql
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
CREATE TABLE
IF NOT EXISTS "ingredients" (
"id" INTEGER,
"name" TEXT,
"price_per_unit" DECIMAL(10, 2),
PRIMARY KEY ("id")
);
CREATE TABLE
IF NOT EXISTS "donuts" (
"id" INTEGER,
"name" TEXT,
"ingredient_id" INTEGER,
"is_gluten_free" BOOLEAN,
"price_per_donut" DECIMAL(10, 2),
PRIMARY KEY ("id"),
FOREIGN KEY ("ingredient_id") REFERENCES "ingredients" ("id")
);
CREATE TABLE
IF NOT EXISTS "orders" (
"id" INTEGER,
"order_number" VARCHAR(255),
"cutomer_id" INTEGER,
PRIMARY KEY ("id"),
FOREIGN KEY ("cutomer_id") REFERENCES "cutomers" ("id")
);
CREATE TABLE
IF NOT EXISTS "donuts_orders" (
"id" INTEGER,
"order_id" INTEGER,
"customer_id" INTEGER,
PRIMARY KEY ("id"),
FOREIGN KEY ("order_id") REFERENCES "orders" ("id"),
FOREIGN KEY ("customer_id") REFERENCES "customers" ("id")
);
CREATE TABLE
IF NOT EXISTS "customers" (
"id" INTEGER,
"first_name" INTEGER,
"last_name" INTEGER,
PRIMARY KEY ("id")
);
CREATE TABLE
IF NOT EXISTS "customer_order_history" (
"customer_id" INTEGER,
"order_id" INTEGER,
PRIMARY KEY ("customer_id", "order_id"),
FOREIGN KEY ("customer_id") REFERENCES "customers" ("id"),
FOREIGN KEY ("order_id") REFERENCES "orders" ("id")
);