/*-- DROP DATABASE gamers ; CREATE DATABASE dbnsi_gamers ; USE dbnsi_gamers ; */ -- DROP TABLE joueur; DROP TABLE jeu; DROP TABLE passager; /* creation des tables */ CREATE TABLE IF NOT EXISTS personne ( idpersonne INT PRIMARY KEY, prenom VARCHAR(20) NOT NULL, birth YEAR NOT NULL, genre CHAR -- parmi : M / F ) ; CREATE TABLE IF NOT EXISTS jeu ( idjeu INT PRIMARY KEY, titre VARCHAR(25) NOT NULL, sortie YEAR NOT NULL ) ; CREATE TABLE IF NOT EXISTS genre ( type VARCHAR(12) NOT NULL, idjeu INT NOT NULL, FOREIGN KEY (idjeu) REFERENCES jeu(idjeu), PRIMARY KEY (type, idjeu) ) ; CREATE TABLE IF NOT EXISTS joueur ( idpersonne INT NOT NULL, idjeu INT NOT NULL, annee YEAR NOT NULL, avis VARCHAR(5), -- parmi : top, bien, moyen, bof, nul FOREIGN KEY (idpersonne) REFERENCES personne(idpersonne), FOREIGN KEY (idjeu) REFERENCES jeu(idjeu), PRIMARY KEY (idpersonne, idjeu) ) ; /* insertion des tables */ INSERT INTO personne (idpersonne, prenom, birth, genre) VALUES ( 0, 'Adèle', 1998, 'F'), ( 1, 'Bob', 2003, 'M'), ( 2, 'Charline', 1995, 'F'), ( 3, 'Dorian', 2002, 'M'), ( 4, 'Éléa', 1999, 'F'), ( 5, 'Fred', 1999, 'M'), ( 6, 'Géraldine', 2009, 'F'), ( 7, 'Hamed', 1980, 'M'), ( 8, 'Isabelle', 1998, 'F'), ( 9, 'John', 2010, 'M'), ( 10, 'Karima', 1984, 'F'), ( 11, 'Laurent', 1984, 'M'), ( 12, 'Marie', 2006, 'F'), ( 13, 'Nicolas', 1987, 'M'), ( 14, 'Ophélie', 1980, 'F'), ( 15, 'Patrick', 1992, 'M'), ( 16, 'Qwanda', 1992, 'F'), ( 17, 'Romain', 1996, 'M'), ( 18, 'Sofia', 1997, 'F'), ( 19, 'Tyson', 1986, 'M'), ( 20, 'Uliana', 1988, 'F'), ( 21, 'Vladislav', 1985, 'M'), ( 22, 'Wilma', 2010, 'F'), ( 23, 'Xao', 1992, 'M'), ( 24, 'Yvonne', 2008, 'F'), ( 25, 'Zidane', 1982, 'M') ; INSERT INTO jeu (idjeu, titre, sortie) VALUES ( 0, 'Flight simulator X', 2006), ( 1, 'Starcraft', 1998), ( 2, 'Age of empire', 1997), ( 3, 'GTA V', 2013), ( 4, 'Assasin’s Creed', 2007), ( 5, 'Super Mario Bros', 1985), ( 6, 'Tetris', 1984), ( 7, 'Minecraft', 2009), ( 8, 'Fifa 18', 2017), ( 9, 'Pokemon ', 1996), ( 10, 'Diablo III', 2012), ( 11, 'Battlefield', 2002), ( 12, 'Lara Croft', 1996), ( 13, 'Final Fantasy', 1987), ( 14, 'Street Fighter', 1987), ( 15, 'Sonic', 1991), ( 16, 'Need for Speed', 1994), ( 17, 'Half Life', 1998), ( 18, 'Pac-man', 1980), ( 19, 'Space Invaders', 1978), ( 20, 'Donkey Kong', 1981), ( 21, 'The dig', 1995), ( 22, 'Monkey island', 1990), ( 23, 'Skyrim', 2011), ( 24, 'Adi adibou', 1991), ( 25, '0ad', 2001), ( 26, 'Supertuxkart', 2004), ( 27, 'Warzone2100', 1999), ( 28, 'Battlezone', 1980), ( 29, 'Hearthstone', 2014), ( 30, 'League of legends', 2009), ( 31, 'Defense of the ancients', 2003) ; INSERT INTO genre (type, idjeu) VALUES ( 'SF', 1), ( 'SF', 13), ( 'SF', 19), ( 'SF', 21), ( 'SF', 27), ( 'SF', 28), ( 'SF', 9), ( 'Sport', 8), ( 'Sport', 16), ( 'Sport', 26), ( 'Sport', 14), ( 'Sport', 0), ( 'Action', 3), ( 'Action', 4), ( 'Action', 14), ( 'Action', 10), ( 'Action', 23), ( 'Action', 17), ( 'MMORPG', 29), ( 'MMORPG', 30), ( 'Réflexion', 6), ( 'Réflexion', 21), ( 'Réflexion', 24), ( 'Réflexion', 22), ( 'Réflexion', 29), ( 'Doom-like', 3), ( 'Doom-like', 4), ( 'Doom-like', 11), ( 'Doom-like', 12), ( 'Doom-like', 17), ( 'Simulation', 3), ( 'Simulation', 8), ( 'Simulation', 16), ( 'Simulation', 26), ( 'Simulation', 28), ( 'Simulation', 0), ( 'Dota-like', 30), ( 'Dota-like', 31), ( 'Arcade', 28), ( 'Arcade', 6), ( 'Arcade', 14), ( 'Arcade', 15), ( 'Arcade', 18), ( 'Arcade', 19), ( 'Arcade', 20), ( 'Arcade', 22), ( 'RTS', 1), ( 'RTS', 2), ( 'RTS', 25), ( 'RTS', 28), ( 'RTS', 30), ( 'RTS', 31), ( 'RPG', 9), ( 'RPG', 13), ( 'RPG', 23), ( 'Aventure', 7), ( 'Aventure', 11), ( 'Aventure', 12), ( 'Aventure', 13), ( 'Aventure', 5) ; /* insertion de la table joueur */ INSERT INTO joueur (idpersonne, idjeu, annee, avis) VALUES (0, 18, 2018, 'top'), (0, 20, 2015, 'top'), (0, 19, 2014, 'bof'), (0, 0, 2020, 'bien'), (0, 10, 2013, 'bof'), (0, 8, 2017, 'bien'), (0, 17, 2018, 'bien'), (0, 3, 2014, 'top'), (0, 9, 2017, 'top'), (0, 13, 2020, 'bien'), (0, 26, 2015, 'bof'), (0, 21, 2009, 'moyen'), (0, 1, 2017, 'bien'), (1, 4, 2020, 'bof'), (1, 20, 2016, 'bien'), (1, 18, 2015, 'top'), (1, 30, 2019, 'moyen'), (1, 9, 2016, 'top'), (1, 25, 2014, 'bien'), (1, 17, 2017, 'bien'), (1, 21, 2014, 'bien'), (1, 27, 2017, 'top'), (1, 3, 2020, 'top'), (1, 15, 2014, 'bof'), (1, 31, 2013, 'bof'), (1, 0, 2017, 'top'), (1, 28, 2015, 'moyen'), (1, 24, 2014, 'moyen'), (1, 26, 2014, 'bof'), (1, 23, 2018, 'bien'), (1, 7, 2013, 'bof'), (1, 29, 2020, 'moyen'), (1, 11, 2020, 'moyen'), (1, 14, 2019, 'moyen'), (1, 16, 2016, 'bof'), (1, 1, 2016, 'bof'), (1, 12, 2020, 'bien'), (1, 19, 2020, 'moyen'), (1, 8, 2018, 'moyen'), (1, 10, 2014, 'moyen'), (1, 13, 2014, 'top'), (1, 2, 2016, 'nul'), (1, 5, 2014, 'bien'), (2, 20, 2014, 'moyen'), (2, 11, 2016, 'bien'), (2, 30, 2012, 'moyen'), (2, 9, 2010, 'top'), (2, 21, 2016, 'bien'), (2, 6, 2008, 'bien'), (2, 0, 2019, 'moyen'), (2, 28, 2009, 'bien'), (2, 5, 2020, 'bof'), (2, 19, 2014, 'bof'), (2, 4, 2009, 'bien'), (2, 14, 2019, 'bien'), (2, 23, 2013, 'bien'), (2, 26, 2017, 'bien'), (2, 18, 2014, 'bien'), (2, 15, 2005, 'bien'), (2, 3, 2014, 'bien'), (2, 17, 2006, 'bien'), (2, 1, 2017, 'bien'), (2, 25, 2011, 'bof'), (2, 2, 2016, 'moyen'), (2, 24, 2020, 'bof'), (2, 29, 2015, 'bof'), (3, 0, 2017, 'bien'), (3, 4, 2018, 'nul'), (3, 21, 2019, 'moyen'), (4, 7, 2019, 'nul'), (4, 19, 2012, 'nul'), (4, 23, 2018, 'moyen'), (4, 4, 2019, 'top'), (4, 20, 2013, 'bof'), (4, 15, 2013, 'moyen'), (4, 27, 2013, 'bof'), (4, 21, 2010, 'moyen'), (4, 16, 2017, 'bof'), (4, 9, 2018, 'nul'), (4, 5, 2019, 'top'), (4, 6, 2012, 'top'), (4, 0, 2020, 'moyen'), (4, 2, 2018, 'bof'), (4, 14, 2015, 'top'), (4, 1, 2009, 'bof'), (4, 29, 2017, 'top'), (4, 17, 2014, 'bof'), (4, 22, 2014, 'bof'), (4, 18, 2009, 'bien'), (5, 20, 2020, 'moyen'), (5, 15, 2019, 'nul'), (5, 31, 2013, 'nul'), (5, 9, 2017, 'bof'), (5, 17, 2012, 'nul'), (5, 12, 2012, 'moyen'), (5, 25, 2009, 'moyen'), (5, 22, 2013, 'bien'), (5, 1, 2009, 'bof'), (5, 6, 2020, 'moyen'), (6, 7, 2019, 'moyen'), (6, 14, 2019, 'moyen'), (6, 3, 2020, 'bien'), (6, 5, 2020, 'moyen'), (6, 15, 2020, 'moyen'), (6, 23, 2019, 'bof'), (6, 16, 2019, 'top'), (6, 21, 2019, 'moyen'), (6, 0, 2019, 'bien'), (6, 30, 2020, 'bien'), (6, 9, 2020, 'bof'), (6, 18, 2019, 'bof'), (6, 25, 2019, 'nul'), (6, 13, 2020, 'top'), (6, 4, 2019, 'nul'), (6, 11, 2019, 'top'), (6, 27, 2020, 'bien'), (6, 17, 2019, 'bof'), (6, 19, 2020, 'nul'), (6, 1, 2019, 'moyen'), (6, 31, 2020, 'bof'), (6, 6, 2019, 'bien'), (6, 28, 2020, 'top'), (7, 5, 2012, 'bof'), (7, 20, 2020, 'moyen'), (7, 31, 2020, 'bof'), (7, 13, 2015, 'nul'), (7, 9, 2010, 'bien'), (7, 30, 2014, 'top'), (7, 6, 2002, 'top'), (7, 26, 2017, 'moyen'), (7, 19, 1992, 'bien'), (7, 12, 2002, 'top'), (7, 10, 2018, 'bof'), (7, 24, 2013, 'moyen'), (7, 16, 1997, 'bien'), (7, 3, 2019, 'bien'), (7, 8, 2019, 'moyen'), (7, 0, 2008, 'moyen'), (7, 14, 2004, 'bof'), (7, 11, 2011, 'moyen'), (7, 7, 2010, 'moyen'), (7, 17, 2004, 'moyen'), (7, 15, 2002, 'top'), (7, 1, 2002, 'bien'), (7, 29, 2014, 'bien'), (7, 25, 2012, 'moyen'), (7, 27, 2016, 'moyen'), (7, 18, 2016, 'moyen'), (7, 22, 2000, 'moyen'), (8, 2, 2011, 'bien'), (8, 27, 2012, 'bof'), (8, 26, 2016, 'bien'), (8, 15, 2018, 'bien'), (8, 29, 2018, 'moyen'), (8, 12, 2008, 'bien'), (8, 18, 2016, 'bien'), (8, 3, 2016, 'bof'), (8, 16, 2019, 'bien'), (8, 6, 2020, 'bien'), (8, 1, 2016, 'bien'), (8, 11, 2015, 'bien'), (8, 7, 2016, 'bien'), (8, 24, 2015, 'top'), (8, 28, 2013, 'bof'), (8, 31, 2017, 'bof'), (8, 0, 2015, 'nul'), (8, 13, 2008, 'nul'), (8, 30, 2011, 'moyen'), (8, 19, 2010, 'bien'), (8, 5, 2015, 'nul'), (8, 9, 2018, 'bof'), (8, 22, 2019, 'bien'), (8, 10, 2018, 'bien'), (8, 4, 2014, 'bof'), (8, 20, 2019, 'moyen'), (9, 20, 2020, 'bien'), (9, 5, 2020, 'bof'), (9, 8, 2020, 'moyen'), (9, 12, 2020, 'bien'), (9, 15, 2020, 'nul'), (9, 22, 2020, 'bien'), (9, 18, 2020, 'moyen'), (9, 24, 2020, 'top'), (9, 6, 2020, 'bien'), (9, 16, 2020, 'moyen'), (9, 21, 2020, 'moyen'), (9, 19, 2020, 'bof'), (9, 23, 2020, 'nul'), (9, 30, 2020, 'bof'), (9, 2, 2020, 'bien'), (9, 17, 2020, 'bien'), (9, 25, 2020, 'moyen'), (9, 0, 2020, 'bien'), (9, 1, 2020, 'bien'), (9, 26, 2020, 'bof'), (9, 29, 2020, 'bien'), (9, 11, 2020, 'moyen'), (10, 27, 2007, 'top'), (10, 12, 2001, 'nul'), (10, 4, 2008, 'bien'), (10, 22, 2011, 'moyen'), (10, 20, 2002, 'bien'), (10, 25, 2015, 'bien'), (10, 13, 2005, 'moyen'), (10, 11, 2019, 'bien'), (10, 18, 2010, 'moyen'), (10, 24, 2012, 'bof'), (10, 16, 2001, 'moyen'), (10, 8, 2019, 'bien'), (10, 28, 2009, 'moyen'), (10, 15, 2014, 'top'), (10, 30, 2009, 'bien'), (10, 29, 2016, 'bien'), (10, 21, 2001, 'moyen'), (10, 5, 2009, 'bien'), (10, 0, 2020, 'bien'), (10, 2, 2014, 'moyen'), (10, 6, 1998, 'moyen'), (10, 7, 2018, 'bien'), (10, 31, 2005, 'bien'), (10, 26, 2016, 'bof'), (10, 19, 1994, 'nul'), (10, 3, 2014, 'bof'), (11, 2, 2013, 'top'), (11, 24, 1999, 'moyen'), (11, 10, 2018, 'bien'), (11, 31, 2010, 'bien'), (11, 4, 2017, 'nul'), (11, 22, 2006, 'bof'), (11, 7, 2010, 'moyen'), (11, 26, 2019, 'bof'), (11, 9, 2003, 'bien'), (11, 12, 2007, 'bien'), (11, 28, 2012, 'top'), (11, 17, 2017, 'bof'), (11, 29, 2018, 'moyen'), (11, 23, 2016, 'bien'), (11, 20, 2006, 'bien'), (12, 15, 2018, 'nul'), (12, 5, 2019, 'bien'), (12, 9, 2017, 'bof'), (12, 20, 2020, 'bien'), (12, 8, 2019, 'bien'), (12, 10, 2019, 'bof'), (12, 0, 2020, 'top'), (13, 23, 2013, 'moyen'), (13, 27, 2016, 'bof'), (13, 10, 2018, 'moyen'), (13, 13, 2015, 'moyen'), (13, 1, 2001, 'nul'), (13, 19, 2003, 'moyen'), (13, 11, 2013, 'moyen'), (13, 17, 1999, 'bien'), (13, 24, 1997, 'moyen'), (13, 28, 1997, 'moyen'), (13, 30, 2015, 'bien'), (13, 21, 2009, 'bien'), (13, 5, 2000, 'bien'), (13, 20, 2001, 'top'), (13, 2, 2014, 'bof'), (13, 6, 2012, 'bien'), (13, 12, 2006, 'moyen'), (13, 0, 2018, 'bof'), (13, 31, 2010, 'moyen'), (13, 15, 2002, 'moyen'), (13, 4, 2020, 'bien'), (13, 8, 2020, 'moyen'), (13, 18, 2006, 'bien'), (14, 28, 2010, 'nul'), (14, 9, 2007, 'top'), (14, 17, 2007, 'top'), (14, 24, 1994, 'bien'), (14, 2, 2001, 'bien'), (14, 27, 2006, 'bien'), (14, 13, 2015, 'bien'), (15, 26, 2016, 'top'), (15, 2, 2006, 'moyen'), (15, 7, 2015, 'moyen'), (15, 13, 2002, 'top'), (15, 10, 2018, 'nul'), (15, 12, 2004, 'bien'), (15, 29, 2015, 'moyen'), (15, 8, 2018, 'nul'), (15, 23, 2016, 'moyen'), (15, 3, 2014, 'top'), (15, 18, 2017, 'bien'), (15, 28, 2004, 'bof'), (15, 1, 2020, 'bien'), (15, 27, 2014, 'top'), (15, 31, 2018, 'moyen'), (15, 21, 2017, 'bien'), (16, 29, 2014, 'top'), (16, 27, 2008, 'bien'), (16, 4, 2009, 'bien'), (17, 0, 2016, 'top'), (17, 4, 2010, 'bien'), (17, 19, 2016, 'nul'), (17, 12, 2011, 'top'), (17, 14, 2008, 'bof'), (17, 28, 2006, 'moyen'), (18, 7, 2017, 'bien'), (18, 12, 2014, 'nul'), (18, 25, 2020, 'moyen'), (18, 16, 2018, 'moyen'), (18, 11, 2020, 'bien'), (18, 18, 2019, 'bof'), (18, 1, 2019, 'bien'), (18, 6, 2013, 'moyen'), (18, 20, 2008, 'moyen'), (18, 15, 2011, 'bof'), (19, 16, 1997, 'top'), (19, 31, 2005, 'moyen'), (19, 6, 2017, 'bien'), (19, 29, 2015, 'bien'), (19, 21, 2015, 'bof'), (19, 17, 2000, 'bien'), (19, 24, 2019, 'moyen'), (19, 7, 2016, 'moyen'), (19, 4, 2010, 'bien'), (19, 22, 2001, 'bien'), (19, 14, 2016, 'moyen'), (19, 9, 2015, 'top'), (19, 26, 2015, 'moyen'), (19, 18, 2018, 'top'), (19, 0, 2013, 'moyen'), (19, 15, 2019, 'nul'), (19, 28, 2014, 'bof'), (20, 26, 2011, 'bien'), (20, 18, 2004, 'bof'), (20, 1, 2012, 'bof'), (20, 9, 2006, 'bien'), (20, 19, 1999, 'nul'), (20, 14, 2008, 'moyen'), (20, 8, 2019, 'moyen'), (20, 22, 2015, 'top'), (20, 30, 2014, 'bien'), (20, 17, 2018, 'bien'), (20, 3, 2014, 'top'), (20, 10, 2019, 'top'), (20, 25, 2019, 'bien'), (20, 16, 2017, 'bien'), (20, 29, 2019, 'bien'), (21, 12, 2019, 'bof'), (21, 5, 1998, 'moyen'), (21, 8, 2017, 'moyen'), (21, 18, 1998, 'bien'), (21, 25, 2019, 'bien'), (21, 1, 2013, 'nul'), (21, 13, 2017, 'nul'), (21, 24, 2001, 'bof'), (21, 19, 2008, 'moyen'), (21, 31, 2007, 'nul'), (21, 10, 2017, 'bof'), (21, 29, 2018, 'top'), (21, 11, 2018, 'nul'), (21, 14, 2002, 'nul'), (21, 0, 2008, 'bien'), (21, 27, 2006, 'moyen'), (21, 7, 2017, 'bien'), (21, 28, 1998, 'moyen'), (21, 21, 2000, 'nul'), (21, 2, 2011, 'bien'), (21, 22, 2007, 'bof'), (21, 6, 2008, 'bien'), (22, 20, 2020, 'nul'), (22, 19, 2020, 'moyen'), (22, 1, 2020, 'bien'), (22, 29, 2020, 'bof'), (22, 21, 2020, 'top'), (22, 0, 2020, 'top'), (22, 18, 2020, 'bien'), (22, 13, 2020, 'bien'), (22, 22, 2020, 'moyen'), (22, 9, 2020, 'nul'), (22, 14, 2020, 'bien'), (22, 12, 2020, 'bien'), (22, 25, 2020, 'nul'), (22, 23, 2020, 'nul'), (22, 4, 2020, 'bien'), (22, 28, 2020, 'bien'), (22, 15, 2020, 'nul'), (22, 10, 2020, 'moyen'), (22, 3, 2020, 'nul'), (22, 27, 2020, 'bien'), (22, 6, 2020, 'bien'), (22, 11, 2020, 'moyen'), (22, 7, 2020, 'moyen'), (22, 8, 2020, 'top'), (22, 31, 2020, 'moyen'), (23, 18, 2019, 'top'), (23, 30, 2010, 'bof'), (23, 13, 2017, 'top'), (23, 10, 2014, 'moyen'), (23, 12, 2006, 'bof'), (23, 0, 2013, 'moyen'), (23, 26, 2019, 'bien'), (23, 11, 2014, 'bien'), (23, 5, 2011, 'bien'), (23, 20, 2016, 'bof'), (23, 8, 2017, 'bof'), (23, 15, 2018, 'bien'), (23, 7, 2017, 'bien'), (23, 22, 2002, 'top'), (23, 9, 2002, 'moyen'), (23, 24, 2004, 'top'), (23, 1, 2010, 'top'), (23, 6, 2015, 'bien'), (23, 3, 2013, 'bof'), (23, 23, 2016, 'bien'), (23, 21, 2008, 'nul'), (23, 27, 2009, 'bien'), (23, 19, 2013, 'bof'), (23, 25, 2012, 'bof'), (23, 17, 2006, 'bien'), (23, 28, 2014, 'top'), (23, 2, 2011, 'moyen'), (24, 5, 2020, 'bien'), (24, 12, 2020, 'moyen'), (24, 23, 2020, 'top'), (24, 18, 2019, 'top'), (24, 25, 2018, 'bien'), (25, 13, 2014, 'nul'), (25, 30, 2014, 'bien'), (25, 22, 1994, 'bien'), (25, 5, 2016, 'bien'), (25, 28, 2011, 'bien'), (25, 2, 2012, 'bien'), (25, 18, 2010, 'moyen'), (25, 15, 1998, 'bien'), (25, 7, 2015, 'nul'), (25, 1, 1998, 'bien'), (25, 31, 2006, 'bien'), (25, 14, 2001, 'nul'), (25, 10, 2015, 'top'), (25, 12, 2008, 'moyen'), (25, 3, 2014, 'top'), (25, 19, 1997, 'top'), (25, 21, 2011, 'top'), (25, 20, 2017, 'moyen'), (25, 9, 2016, 'nul'), (25, 11, 2009, 'bien'), (25, 8, 2020, 'bof'), (25, 17, 2018, 'bien'), (25, 23, 2011, 'moyen'), (25, 16, 1995, 'bien'), (25, 27, 2003, 'moyen') ;