-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathloaddata.sql
More file actions
93 lines (81 loc) · 2.76 KB
/
loaddata.sql
File metadata and controls
93 lines (81 loc) · 2.76 KB
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
CREATE TABLE "Users" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"first_name" varchar,
"last_name" varchar,
"email" varchar,
"bio" varchar,
"username" varchar,
"password" varchar,
"profile_image_url" varchar,
"created_on" date,
"active" bit
);
CREATE TABLE "DemotionQueue" (
"action" varchar,
"admin_id" INTEGER,
"approver_one_id" INTEGER,
FOREIGN KEY(`admin_id`) REFERENCES `Users`(`id`),
FOREIGN KEY(`approver_one_id`) REFERENCES `Users`(`id`),
PRIMARY KEY (action, admin_id, approver_one_id)
);
CREATE TABLE "Subscriptions" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"follower_id" INTEGER,
"author_id" INTEGER,
"created_on" date,
FOREIGN KEY(`follower_id`) REFERENCES `Users`(`id`),
FOREIGN KEY(`author_id`) REFERENCES `Users`(`id`)
);
CREATE TABLE "Posts" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"user_id" INTEGER,
"category_id" INTEGER,
"title" varchar,
"publication_date" date,
"image_url" varchar,
"content" varchar,
"approved" bit,
FOREIGN KEY(`user_id`) REFERENCES `Users`(`id`)
);
CREATE TABLE "Comments" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"post_id" INTEGER,
"author_id" INTEGER,
"content" varchar,
FOREIGN KEY(`post_id`) REFERENCES `Posts`(`id`),
FOREIGN KEY(`author_id`) REFERENCES `Users`(`id`)
);
CREATE TABLE "Reactions" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"label" varchar,
"image_url" varchar
);
CREATE TABLE "PostReactions" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"user_id" INTEGER,
"reaction_id" INTEGER,
"post_id" INTEGER,
FOREIGN KEY(`user_id`) REFERENCES `Users`(`id`),
FOREIGN KEY(`reaction_id`) REFERENCES `Reactions`(`id`),
FOREIGN KEY(`post_id`) REFERENCES `Posts`(`id`)
);
CREATE TABLE "Tags" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"label" varchar
);
CREATE TABLE "PostTags" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"post_id" INTEGER,
"tag_id" INTEGER,
FOREIGN KEY(`post_id`) REFERENCES `Posts`(`id`),
FOREIGN KEY(`tag_id`) REFERENCES `Tags`(`id`)
);
CREATE TABLE "Categories" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"label" varchar
);
INSERT INTO Categories ('label') VALUES ('News');
INSERT INTO Tags ('label') VALUES ('JavaScript');
INSERT INTO Reactions ('label', 'image_url') VALUES ('happy', 'https://pngtree.com/so/happy');
INSERT INTO Users ('first_name', 'last_name', 'email', 'bio', 'username', 'password', 'profile_image_url', 'created_on', 'active') VALUES ('Sarah', 'Brown', 'user1@example.com', 'This is my bio.', 'User1', 'password1', 'https://upload.wikimedia.org/wikipedia/en/thumb/5/5f/Original_Doge_meme.jpg/330px-Original_Doge_meme.jpg', (CURRENT_DATE), 1)
INSERT INTO Posts ('user_id', 'category_id', 'title', 'publication_date', 'image_url', 'content', 'approved') VALUES (1, 1, 'Ipsum Lorem', '2024-05-09', '', 'Latin Stuff', 1);