Vous êtes sur la page 1sur 5

Liam ROUX

Mohamed EL MOTTALIB

TP1 : SGBDR
Exemple TP :

Ciné Chaine Salle Proj Film Artis Rôl Cate Statio Ligne TypLig
ma te e g n ne
Cinéma apparte dispo Situer
nir ser
Chaine
Salle organi
ser
Proj concer
ner
Film réalis jou être
er er
Artiste
Rôle
Categ
Station Se
trouv
er
Ligne
TypeLig
ne

- Table "Races" : contient les différentes races présentes dans le jeu, avec les champs suivants : ID,
Nom, Description, Arme favorite.

- Table "Villes" : contient les différentes villes présentes dans le jeu, avec les champs suivants : ID,
Nom, Pays, Description.

- Table "Armes" : contient les différentes armes présentes dans le jeu, avec les champs suivants : ID,
Nom, Description.

- Table "Animaux" : contient les différents animaux présents dans le jeu, avec les champs suivants :
ID, Nom, Description, Pays.

- Table "Alliances" : contient les différentes alliances entre les races, avec les champs suivants : ID,
Nom, Description, Race 1, Race 2.

- Table "Ennemis" : contient les différentes relations tendues ou ennemies entre les races, avec les
champs suivants : ID, Nom, Description, Race 1, Race 2.

- Table "Personnages" : contient les différents personnages présents dans le jeu, avec les champs
suivants : ID, Nom, Père, Titre, Race, Arme, Ville, Description.

- Table "Amis" : contient les différentes amitiés entre les personnages, avec les champs suivants : ID,
Personnage 1, Personnage 2.
Liam ROUX
Mohamed EL MOTTALIB

Pour créer la base de données pour le premier volet du jeu "Les batailles de la Terre du Milieu" basé
sur l'univers du Seigneur des Anneaux, vous devrez concevoir une structure de données qui contient
toutes les informations nécessaires pour chaque élément de l'univers du jeu. Voici un schéma de
base pour la base de données :

1. **Pays** :

- Nom du pays

- Description du pays

- Peuple dominant

2. **Peuple** :

- Nom du peuple

- Race du peuple (Elfes, Nains, Hommes, etc.)

- Nombre de représentants

- Alliance (contre Sauron, du côté de Sauron, indépendants)

- Relations avec d'autres peuples (amis, tendues, ennemis)

- Arme favorite

3. **Animal** :

- Nom de l'animal

- Pays d'origine de l'animal

4. **Ville** :

- Nom de la ville

- Pays où se trouve la ville

5. **Bataille** :

- Nom de la bataille
Liam ROUX
Mohamed EL MOTTALIB

- Ville attaquée

- Date de la bataille

- Durée de la bataille

- Issue de la bataille (gagnée ou perdue)

- Pertes pour chaque peuple participant (côté Sauron et côté ennemis de Sauron)

- Type d'attaque (prévue par Sauron ou par les ennemis de Sauron)

6. **Personnage Principal** :

- Nom du personnage

- Nom du père du personnage (le cas échéant)

- Titre (Roi, capitaine, etc.)

- Pays d'origine

- Armes du personnage

- Amis parmi les autres personnages principaux

7. **Décès de Personnage Principal** :

- Nom du personnage décédé

- Date du décès

- Pays où le décès a eu lieu

- Responsable du décès (autre personnage principal)

Assurez-vous que la base de données soit capable de gérer les relations entre ces différentes tables.
Par exemple, un pays peut avoir plusieurs villes, un peuple peut être allié à plusieurs autres peuples,
etc. Les batailles doivent être liées aux peuples et aux personnages principaux qui y participent.

Vous pouvez utiliser un système de gestion de base de données relationnelle (comme MySQL,
PostgreSQL, ou SQLite) pour implémenter cette structure de données. N'oubliez pas de prendre en
compte les contraintes d'intégrité référentielle pour maintenir la cohérence des données.

Une fois que la base de données est mise en place, vous pourrez la peupler avec les informations
spécifiques à votre jeu, en vous basant sur l'histoire du Seigneur des Anneaux que vous avez décrite.
Cette base de données servira de fondement pour le développement du jeu et permettra aux joueurs
de prendre des décisions stratégiques dans l'univers de la Terre du Milieu.
Liam ROUX
Mohamed EL MOTTALIB

Les relations

Les relations entre les différentes tables de la base de données peuvent être modélisées comme suit,
en utilisant la notation de diagramme entité-relation (ERD) :

1. **Pays** :

- Peuple dominant (Clé étrangère vers la table **Peuple**)

2. **Peuple** :

- Race du peuple (Clé étrangère vers la table **Race**)

3. **Animal** :

- Pays d'origine de l'animal (Clé étrangère vers la table **Pays**)

4. **Ville** :

- Pays où se trouve la ville (Clé étrangère vers la table **Pays**)

5. **Bataille** :

- Ville attaquée (Clé étrangère vers la table **Ville**)

- Type d'attaque (Clé étrangère vers une table décrivant les types d'attaque, si nécessaire)

6. **Personnage Principal** :

- Pays d'origine (Clé étrangère vers la table **Pays**)

7. **Décès de Personnage Principal** :

- Responsable du décès (Clé étrangère vers la table **Personnage Principal**)


Liam ROUX
Mohamed EL MOTTALIB

Il y a également des relations indirectes qui peuvent être établies entre ces tables à travers des tables
intermédiaires, par exemple, pour gérer les relations entre les peuples et les batailles auxquelles ils
participent. Vous pouvez utiliser des tables de jonction pour cela.

8. **Participation à une Bataille** :

- Peuple participant (Clé étrangère vers la table **Peuple**)

- Bataille où ils ont participé (Clé étrangère vers la table **Bataille**)

9. **Participation de Personnage Principal à une Bataille** :

- Personnage principal participant (Clé étrangère vers la table **Personnage Principal**)

- Bataille à laquelle il a participé (Clé étrangère vers la table **Bataille**)

Ces relations permettent de modéliser comment les différentes entités (pays, peuples, animaux,
villes, batailles, personnages principaux, décès) sont liées les unes aux autres dans l'univers du jeu,
en tenant compte des participations aux batailles et des relations entre les personnages principaux.
Cette structure de données permettra de créer des requêtes complexes pour gérer le gameplay du
jeu.

Escalier seigneur des anneaux :

Pays Peuple Animal Ville Bataille PersPrin DecPersPrin ParticiPersPrinc


Pays Peuple dominant
Peuple
Animal
Ville
Bataille
PersPrin
DecPersPrin
ParticiPersPrincPrincipal

Vous aimerez peut-être aussi