-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSetupTablesService.sql
More file actions
executable file
·44 lines (39 loc) · 1.68 KB
/
SetupTablesService.sql
File metadata and controls
executable file
·44 lines (39 loc) · 1.68 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
DROP TABLE IF EXISTS Contacts;
CREATE TABLE Contacts(PrimaryKey SERIAL PRIMARY KEY,
MemberID_A INT NOT NULL,
MemberID_B INT NOT NULL,
Verified INT DEFAULT 0,
FOREIGN KEY(MemberID_A) REFERENCES Members(MemberID),
FOREIGN KEY(MemberID_B) REFERENCES Members(MemberID)
);
DROP TABLE IF EXISTS Chats;
CREATE TABLE Chats (ChatID SERIAL PRIMARY KEY,
Name VARCHAR(255)
);
DROP TABLE IF EXISTS ChatMembers;
CREATE TABLE ChatMembers (ChatID INT NOT NULL,
MemberID INT NOT NULL,
FOREIGN KEY(MemberID) REFERENCES Members(MemberID),
FOREIGN KEY(ChatID) REFERENCES Chats(ChatID)
);
DROP TABLE IF EXISTS Messages;
CREATE TABLE Messages (PrimaryKey SERIAL PRIMARY KEY,
ChatID INT,
Message VARCHAR(255),
MemberID INT,
FOREIGN KEY(MemberID) REFERENCES Members(MemberID),
FOREIGN KEY(ChatID) REFERENCES Chats(ChatID),
TimeStamp TIMESTAMP WITH TIME ZONE DEFAULT current_timestamp
);
DROP TABLE IF EXISTS Locations;
CREATE TABLE Locations (PrimaryKey SERIAL PRIMARY KEY,
MemberID INT,
City VARCHAR(255),
FOREIGN KEY(MemberID) REFERENCES Members(MemberID)
);
DROP TABLE IF EXISTS Push_Token;
CREATE TABLE Push_Token (KeyID SERIAL PRIMARY KEY,
MemberID INT NOT NULL UNIQUE,
Token VARCHAR(255),
FOREIGN KEY(MemberID) REFERENCES Members(MemberID)
);