-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpokemon.sql
More file actions
164 lines (133 loc) · 5.17 KB
/
pokemon.sql
File metadata and controls
164 lines (133 loc) · 5.17 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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
CREATE TABLE game
(
game_id bigint NOT NULL AUTO_INCREMENT,
game_player1 bigint,
game_player2 bigint,
game_winner bigint,
CONSTRAINT pk_game_history PRIMARY KEY (game_id)
);
CREATE TABLE game_players
(
player_id bigint NOT NULL AUTO_INCREMENT,
player_nickname varchar(200),
player_pokemon1 bigint,
player_pokemon2 bigint,
player_pokemon3 bigint,
player_pokemon4 bigint,
player_pokemon5 bigint,
player_pokemon6 bigint,
player_first_pokemon bigint,
CONSTRAINT pk_game_players PRIMARY KEY (player_id)
);
CREATE TABLE movements
(
movement_id bigint NOT NULL,
movement_name varchar(130),
movement_accuracy bigint,
movement_power bigint,
movement_pp bigint,
movement_type bigint,
CONSTRAINT pk_movements PRIMARY KEY (movement_id)
);
CREATE TABLE player_attacks
(
player_attack_id bigint NOT NULL AUTO_INCREMENT,
player_attack_player_id bigint,
player_attack_pokemon bigint,
player_attack_movement bigint,
player_attack_attacked_player_id bigint,
player_attack_attacked_pokemon bigint,
CONSTRAINT pk_game_history1 PRIMARY KEY (player_attack_id)
);
CREATE TABLE player_change
(
player_change_id bigint NOT NULL AUTO_INCREMENT,
player_change_player_id bigint,
player_change_old_pokemon_id bigint,
player_change_new_pokemon_id bigint,
CONSTRAINT pk_player_change PRIMARY KEY (player_change_id)
);
CREATE TABLE player_turn
(
player_turn_id bigint NOT NULL,
player_turn_game_id bigint NOT NULL,
player_turn_attack bigint,
player_turn_change bigint,
CONSTRAINT pk_player_turn PRIMARY KEY (player_turn_id, player_turn_game_id)
);
CREATE TABLE pokemon
(
pokemon_id bigint NOT NULL,
pokemon_name varchar(540),
pokemon_stats_hp bigint,
pokemon_stats_attack bigint,
pokemon_stats_defense bigint,
pokemon_stats_special_attack bigint,
pokemon_stats_special_defense bigint,
pokemon_stats_speed bigint,
pokemon_sprites_front varchar(300),
pokemon_sprites_back varchar(300),
CONSTRAINT pokemon_id PRIMARY KEY (pokemon_id)
);
CREATE TABLE pokemon_movement
(
pokemon_id bigint NOT NULL,
movement_id bigint NOT NULL,
CONSTRAINT pk_pokemon_movement PRIMARY KEY (pokemon_id, movement_id)
);
CREATE TABLE stats_relation
(
stats_id bigint NOT NULL,
stats_name varchar(30),
CONSTRAINT pk_stats_relation PRIMARY KEY (stats_id)
);
CREATE TABLE type_table
(
type_id bigint NOT NULL,
type_name varchar(30),
CONSTRAINT pk_type_table PRIMARY KEY (type_id)
);
ALTER TABLE game ADD CONSTRAINT fk_game_history_
FOREIGN KEY (game_player1) REFERENCES game_players (player_id);
ALTER TABLE game ADD CONSTRAINT fk_game_history_2
FOREIGN KEY (game_player2) REFERENCES game_players (player_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_
FOREIGN KEY (player_pokemon1) REFERENCES pokemon (pokemon_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_2
FOREIGN KEY (player_pokemon2) REFERENCES pokemon (pokemon_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_3
FOREIGN KEY (player_pokemon3) REFERENCES pokemon (pokemon_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_4
FOREIGN KEY (player_pokemon4) REFERENCES pokemon (pokemon_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_5
FOREIGN KEY (player_pokemon5) REFERENCES pokemon (pokemon_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_6
FOREIGN KEY (player_pokemon6) REFERENCES pokemon (pokemon_id);
ALTER TABLE game_players ADD CONSTRAINT fk_game_players_7
FOREIGN KEY (player_first_pokemon) REFERENCES pokemon (pokemon_id);
ALTER TABLE movements ADD CONSTRAINT fk_movements_
FOREIGN KEY (movement_type) REFERENCES type_table (type_id);
ALTER TABLE player_attacks ADD CONSTRAINT fk_player_attacks_
FOREIGN KEY (player_attack_movement) REFERENCES movements (movement_id);
ALTER TABLE player_attacks ADD CONSTRAINT fk_player_attacks_2
FOREIGN KEY (player_attack_pokemon) REFERENCES pokemon (pokemon_id);
ALTER TABLE player_attacks ADD CONSTRAINT fk_player_attacks_3
FOREIGN KEY (player_attack_attacked_pokemon) REFERENCES pokemon (pokemon_id);
ALTER TABLE player_attacks ADD CONSTRAINT fk_player_attacks_4
FOREIGN KEY (player_attack_player_id) REFERENCES game_players (player_id);
ALTER TABLE player_attacks ADD CONSTRAINT fk_player_attacks_5
FOREIGN KEY (player_attack_attacked_player_id) REFERENCES game_players (player_id);
ALTER TABLE player_change ADD CONSTRAINT fk_player_change_
FOREIGN KEY (player_change_player_id) REFERENCES game_players (player_id);
ALTER TABLE player_change ADD CONSTRAINT fk_player_change_2
FOREIGN KEY (player_change_old_pokemon_id) REFERENCES pokemon (pokemon_id);
ALTER TABLE player_turn ADD CONSTRAINT fk_player_turn_
FOREIGN KEY (player_turn_game_id) REFERENCES game (game_id);
ALTER TABLE player_turn ADD CONSTRAINT fk_player_turn_2
FOREIGN KEY (player_turn_attack) REFERENCES player_attacks (player_attack_id);
ALTER TABLE player_turn ADD CONSTRAINT fk_player_turn_3
FOREIGN KEY (player_turn_change) REFERENCES player_change (player_change_id);
ALTER TABLE pokemon_movement ADD CONSTRAINT fk_pokemon_movement_
FOREIGN KEY (pokemon_id) REFERENCES pokemon (pokemon_id);
ALTER TABLE pokemon_movement ADD CONSTRAINT fk_pokemon_movement_2
FOREIGN KEY (movement_id) REFERENCES movements (movement_id);