/
file.sql
114 lines (105 loc) · 2.82 KB
/
file.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
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
CREATE TABLE users
(
id INT NOT NULL AUTO_INCREMENT,
email VARCHAR(50) NOT NULL,
password VARCHAR(50) NOT NULL,
created_at DATETIME,
phone VARCHAR(30),
status INT NOT NULL,
gcm_token VARCHAR(200) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE cities
(
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE destinations
(
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
photo VARCHAR(255) NOT NULL,
status INT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE airports
(
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
photo VARCHAR(255) NOT NULL,
star VARCHAR(10) NOT NULL,
review VARCHAR(100) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE classes
(
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
price VARCHAR(100) NOT NULL,
estimate VARCHAR(100) NOT NULL,
terminal VARCHAR(10) NOT NULL,
gate VARCHAR(10) NOT NULL,
id_destination INT,
id_airport INT,
PRIMARY KEY (id),
FOREIGN KEY (id_destination) REFERENCES destinations(id) ON DELETE SET NULL ON UPDATE CASCADE,
FOREIGN KEY (id_airport) REFERENCES airports(id) ON DELETE SET NULL ON UPDATE CASCADE
);
CREATE TABLE transactions
(
id INT NOT NULL AUTO_INCREMENT,
unique_code VARCHAR(100) NOT NULL,
status INT NOT NULL,
departure_at DATETIME,
id_class INT,
id_user INT,
PRIMARY KEY (id),
FOREIGN KEY (id_class) REFERENCES classes(id) ON DELETE SET NULL ON UPDATE CASCADE,
FOREIGN KEY (id_user) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE
);
CREATE TABLE notifications
(
id INT NOT NULL AUTO_INCREMENT,
is_open INT NOT NULL,
title VARCHAR(255) NOT NULL,
description LONGTEXT NOT NULL,
created_at DATETIME,
id_user INT,
PRIMARY KEY (id),
FOREIGN KEY (id_user) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE
);
CREATE TABLE chats
(
id INT NOT NULL AUTO_INCREMENT,
created_at DATETIME,
message LONGTEXT NOT NULL,
id_sender INT,
id_receiver INT,
PRIMARY KEY (id),
FOREIGN KEY (id_sender) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE,
FOREIGN KEY (id_receiver) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE
);
CREATE TABLE bubble_chat
(
id INT NOT NULL AUTO_INCREMENT,
total VARCHAR(100) NOT NULL,
id_sender INT,
id_receiver INT,
PRIMARY KEY (id),
FOREIGN KEY (id_sender) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE,
FOREIGN KEY (id_receiver) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE
);
CREATE TABLE profiles
(
id INT NOT NULL AUTO_INCREMENT,
username VARCHAR(100) NOT NULL,
address LONGTEXT,
postcode VARCHAR(15),
created_at DATETIME,
id_user INT,
id_city INT,
PRIMARY KEY (id),
FOREIGN KEY (id_user) REFERENCES users(id) ON DELETE SET NULL ON UPDATE CASCADE,
FOREIGN KEY (id_city) REFERENCES cities(id) ON DELETE SET NULL ON UPDATE CASCADE
);