Académique Documents
Professionnel Documents
Culture Documents
1
Remerciement
2
Sommaire
Introduction
Première partie : gestion de base de données et ses systèmes
I. Système de gestion de base de données
II. Le modèle conceptuel de données
III. Le modèle logique de données
IV. MySQL
I. Présentation du cas
II. Dictionnaire de donnée
III. Modèle conceptuelle de données
IV. Modèle logique de donnée (MLD) :
V. Application : MySQL
Conclusion
3
Introduction générale
L’informatique évolue vers le traitement de masses d’informations de plus en plus grandes. Dans
ce contexte, les bases de données sont utilisées de façon intensive pour de nombreux domaines
d’application tels que le domaine médical, les administrations, les associations ou des hôtels.
Les bases de données relationnelles constituent l’objet de ce cours. Ces bases sont conçues
suivant le modèle relationnel, dont les fondations théoriques sont solides, et manipulées en utilisant
l’algèbre relationnelle. Il s’agit, à ce jour, de la méthode la plus courante pour organiser et accéder à
des ensembles de données.
Le langage SQL (Structured QueryLanguage) supporté par la plupart des systèmes de gestion de
base de données offre grâce a sa simplicité et au fait qu’il s’appuie sur le schéma conceptuel pour
énoncer des requêtes en laissant le systèmes de gestion de base de données responsable de la stratégie
d’exécution offre une multitude d'outils puissants capables de répondre aux besoins des
administrateurs de bases de données et des développeurs.
Certes, les difficultés que connait AFTER FLOWERS HOTEL à sa gestion de réservation suite
à ses travaux font courir souvent les risques de perte des documents et difficultés dans le classement,
cette forme de travail cause souvent des préjudices, c'est pourquoi, le choix d'un système informatique
avec ses influences devant permettre de fluidifier le processus de traitement des réservations.
Dans notre travail on a essayé de répondre à ces problématiques pour la première partie va être
théorique toute en se concentrant sur l importance des systèmes de gestion de base de données et du
système Structured Query Language qui développe des stratégies et des outils pour rependre aux
nécessités des administrateurs, et pour la deuxième partie va être consacrer a résoudre les problèmes
4
de AFTER FLOWERS HOTEL toute en commençant par le Modèle Conceptuel de Donnée, après le
Model Logique de Donnée et enfin appliqué toutes les données dans le système Structured Query
Language.
5
Première partie :
Gestion de base de
données et ses systèmes
6
Introduction
Construire une base de données consiste à regrouper les données en paquets(les entités, les
tables), chaque entité (table) étant composée d'un nombre fini de données( les attributs), la répétition
(redondance) des attributs devant être minimale, et pour construire ces tables il faut d’abord formaliser
un MCD(modèle conceptuel de données) ,et à partir du MCD en peut facilement passer a MLD qui vas
nous faciliter le passage du modèle logique au modèle physique script SQL de création de la base de
données.
Win ‘Design offre cette fonctionnalité de génération automatique du modèle logique relationnel
à partir du MCD, puis du modèle logique au modèle physique (SQL).
7
enregistrements .Une table est constituée de plusieurs colonnes, chacune est représenté par un nom
appelé champ. Chaque champ regroupe des informations, de même type.
Une base de données n'accepte pas la redondance (aucune donnée ne sera répétée dans la base de
données), Elle n'accepte pas l'incohérence des données(Les données doivent être structurées dans la
base de données), Elle assure la sécurité des informations, Elle doit être indépendante des programmes
et des données, elle doit permettre la prise en compte facile de nouvelles applications.
2.I Historique de base de données :
En 1956 les disques durs ont été inventés, cette invention a permis d’utiliser les ordinateurs pour
collecter, classer et stocker des grandes quantités d’informations.
Au début des années 1960, l’apparition des premières bases de donnée hiérarchiques, puis en
1969, le modèle de donnée réseau a été créer pour des applications informatiques pour lesquelles le
modèle hiérarchique ne convient pas.
Le modèle entité-association a été inventé en 1975, puis les premières bases de données
commencent à apparaitre.
Dans les années 1990, les bases de données utilisent un modèle de données relationnel qui lui
permet de stocker ses objets.
3.I Gestion de base de données :
La gestion de base de données se fait au moyen d'un logiciel appelé SGBD, acronyme de
Système de Gestion de Base de Données, en anglais DBMS (Data Base Management System). Ce
logiciel prend en charge tous les accès à la base de données. A titre d'exemple: la structuration, le
stockage, la maintenance, l'insertion, la mise à jour, la consultation et la suppression d'une base de
données, etc.
Le système de gestion de base de données est un logiciel système qui permet d’inscrire,
retrouver, modifier, trier, transformer et stocker les informations dans une base de données .comme
exemple de SGBD on peut citer le logiciel : Microsoft Access, Inter-base, FoxPro, DB2, MySQL,
Oracle, SQL Server, etc.
Un SGBD est souvent constitué de trois couches successives :
Gestionnaire de fichiers : gestion de stockage physique de l’information.
SGBD interne : gestion des liens et d’accès rapide aux données.
SGBD externe : gestion de la présentation des données aux utilisateurs, il se charge donc
de l’interface avec l’utilisateur.
Le SGBD est donc l’intermédiaire entre la base de données et les utilisateurs, une base de
données est composée de plusieurs fichiers manipulés par le SGBD, ce dernier permet d’enregistre les
8
données, puis de les rechercher, les modifier, et de créer automatiquement des comptes rendus du
contenu de la base de données.
Des objectifs principaux ont été fixés aux SGBD afin de résoudre les problèmes causés par la
démarche classique. Ces objectifs sont les suivants :
Indépendance physique :
La façon dont les données sont définies doit être indépendante des structures de stockage
utilisées.
Indépendance logique :
Un même ensemble de données peut être vu différemment par des utilisateurs différents. Toutes
ces visions personnelles des données doivent être intégrées dans une vision globale.
Accès aux données :
L’accès aux données se fait par l’intermédiaire d’un Langage de Manipulation de Données
(LMD). Il est crucial que ce langage permette d’obtenir des réponses aux requêtes en un temps
« raisonnable ». Le LMD doit donc être optimisé, minimiser le nombre d’accès disques, et tout cela de
façon totalement transparente pour l’utilisateur.
Administration centralisée des données (intégration) :
Toutes les données doivent être centralisées dans un réservoir unique commun à toutes les
applications. En effet, des visions différentes des données (entre autres) se résolvent plus facilement si
les données sont administrées de façon centralisée.
Non redondance des données :
Afin d’éviter les problèmes lors des mises à jour, chaque donnée ne doit être présente qu’une
seule fois dans la base.
Cohérence des données :
Les données sont soumises à un certain nombre de contraintes d’intégrité qui définissent un état
cohérent de la base. Elles doivent pouvoir être exprimées simplement et vérifiées automatiquement à
chaque insertion, modification ou suppression des données. Les contraintes d’intégrité sont décrites
dans le Langage de Description de Données (LDD).
Partage des données :
Il s’agit de permettre à plusieurs utilisateurs d’accéder aux mêmes données au même moment de
manière transparente. Si ce problème est simple à résoudre quand il s’agit uniquement
d’interrogations, cela ne l’est plus quand il s’agit de modifications dans un contexte multiutilisateurs
car il faut : permettre à deux (ou plus) utilisateurs de modifier la même donnée « en même temps » et
9
assurer un résultat d’interrogation cohérent pour un utilisateur consultant une table pendant qu’un autre
la modifie.
Sécurité des données :
Les données doivent pouvoir être protégées contre les accès non autorisés. Pour cela, il faut
pouvoir associer à chaque utilisateur des droits d’accès aux données.
Résistance aux pannes :
Que se passe-t-il si une panne survient au milieu d’une modification, si certains fichiers
contenant les données deviennent illisibles ? Il faut pouvoir récupérer une base dans un état « sain ».
Ainsi, après une panne intervenant au milieu d’une modification deux solutions sont possibles : soit
récupérer les données dans l’état dans lequel elles étaient avant la modification, soit terminé
l’opération interrompue.
Les éléments utilisés pour la formalisation d'un MCD sont les suivants :
Est la représentation d'un objet matériel ou immatériel pourvu d'une existence propre et
conforme aux choix de gestion de l'entreprise ;
10
Une occurrence d'une entité :
Règles à vérifier sur les associations : règles des entités. L'identifiant d'une association est la
concaténation des identifiants des entités qu'elle relie.
La cardinalité d'une entité par rapport a une association S’exprime sous forme d'un couple:
(cardinalité minimale : cardinalité maximale).
Cardinalité minimale :
C’est le nombre minimal de fois ou une occurrence d'un objet participe aux occurrences de
l'association ; elle vaut très souvent 0 ou 1.
Cardinalité maximale :
C'est le nombre maximal de fois ou une cooccurrence d'un objet participe aux occurrences de
L’association ; elle vaut 1, un entier fixé ou n (\n" pour indiquer l'impossibilité de fixer une borne
maximale).
11
Le MCD permet d'exprimer graphiquement des règles de gestion qui correspondent aux contraintes
d'intégrités des données
Le Modèle Logique des Données (MLD) est une étape intermédiaire pour passer du modèle
entité association, qui est un modèle sémantique, vers une représentation physique des données :
fichiers, système de gestion de base de données hiérarchique, système de gestion de base de données
réseau, système de gestion de base de données relationnel.
Une table relationnelle correspond à un type d’entité ou d’association (ex: commande, ligne de
commande, client …).
Elle est composée d’attributs (colonnes) qui décrivent ce type (ex: numéro de commande, date de
commande …)
Elle possède une clé primaire : ensemble minimum d’attributs qui permettent de repérer de
manière univoque chaque ligne de la table, c’est-à-dire chaque instance du type.
Ex : Commande (numerocommande, date_commande …etc.)
12
Les liens entre tables sont exprimés par les clés étrangères, une clé étrangère est un ensemble
d'attributs d'une table qui est clé primaire dans une autre table.
La clé étrangère doit correspondre à une clé primaire existante (contrainte d’intégrité
référentielle).
Toute Entité devient une table dont la clé primaire est l'identifiant de l'Entité
Client
Codcli
Nomcli
Adrcli
se
traduit
par
Client (codcli,
nomcli, adrcli)
IV. Qu'est-ce-que MySQL ?
MySQL est un système de gestion de base de données relationnelle qui augmente la vitesse et la
flexibilité, et qui permet de stocker les données dans des tables séparées, ces tables sont liées par des
relations définis qui combinent les données de plusieurs tables sur demande.
MySQL est très rapide, fiable, et facile à employer. MySQL a également un ensemble de
dispositifs très pratiques développés en coopération avec ses utilisateurs. C'est également 'Open
Source' et donc librement accessible.
13
MySQL est employé pour accéder à des bases de données sur Internet dû à sa connectivité, à sa
vitesse et à sa sécurité. Il a été à l'origine développé pour contrôler de grandes bases de données à une
vitesse beaucoup plus rapide que les solutions qui ont précédemment existé.
Le SQL (Structured Query Language) : est un langage de manipulation de bases de données
mis au point dans les années 70. Il permet trois types de manipulations sur les bases de données :
La maintenance des tables : création, suppression, modification de la structure des tables.
Les manipulations des bases de données : Sélection, modification, suppression
d'enregistrements.
La gestion des droits d'accès aux tables : Contrôle des données : droits d'accès, validation des
modifications.
L'intérêt de SQL est que c'est un langage de manipulation de bases de données standard, vous
pourrez l'utiliser sur n'importe quelle base de données, même si, à priori, vous ne connaissez pas son
utilisation. Ainsi, avec SQL, vous pouvez gérer une base de données Access, mais aussi Oracle ou
Informix par exemple (les bases de données les plus utilisées),la version la plus connue sur le Web est
MySQL, une implémentation gratuite qui s'utilise notamment avec PHP, mais SQL est aussi le langage
de nombreux autres logiciels de base de données parmi lesquelles, Oracle,, Access et SQL Server...
Les principales étapes pour la création d’une table sont:
14
Deuxième partie :
Cas d’AFTER
FLOWERS HOTEL
15
I. Présentation du cas
AFTER FLOWERS propose des hôtels et des resorts contemporains adaptés aux attentes des
différents clients de l’hôtellerie de luxe d’aujourd’hui en quête d’esthétique, de qualité et d’excellence.
Qu’il s’inscrive au cœur d’une grande métropole comme Paris, ou qu’il se niche dans un paysage du
Maroc, d’Egypte, des îles Fidji ou de Thaïlande, chaque AFTER FLOWERS offre une véritable
expérience de l’art de vivre à la française.
AFTER FLOWERS au Maroc son responsable trouve une difficulté pour gérer la réservation
pour les clients dans chaque ville au Maroc pour cela le responsable d’AFTER FLOWERS HOTEL au
Maroc désire établir une gestion de réservation, il nous a confié une mission de gestion des hôtels et de
ses processus de réservations de chambre pendant toute l’année.
Un hôtel a un numéro, un nom, une adresse, un hôtel se situe dans une région et une région a
un nom unique
Le client peut payer la facture avec le montant total de la réservation ou il paye une partie et le
reste le laisse lorsqu’il quitte l’hôtel aussi selon le nombre de nuitée.
Les clients sont identifiés par un numéro, un nom, une adresse, et un téléphone.
Chaque réservation est caractérisée par une date de début et date de fin.
16
II. Dictionnaire de donnée
17
III. Modèle conceptuelle de données
18
IV. Modèle logique de donnée (MLD) :
V. Application : MySQL
19
1.1.V Création de la base de données
20
2.1.V Création de la table client
21
22
3.1.V Création de la table chambre
23
4.1.V Création de la table hôtel
24
6.1.V Création de la table réservation
25
7.1.V Création de la table effectuer
26
8.1.V Création de la table concerner
27
9.1.V Création de la table situer
28
10.1.V Insertion des données de la table chambre
29
11.1.V Insertion des données de la table hotel
30
12.1.V Insertion des données de la table situer
31
13.1.V Insertion des données de la table client
32
14.1.V Insertion des données de la table région
33
15.1.V Insertion des données de la table de réservation
34
35
16.1.V Insertion des données de la table facture
36
37
17.1.V Insertion des données de la table concerner
38
18.1.V Insertion des données de la table effectuer
39
20.1.V Pour changé la saison de la réservation N°1 : printemps /été
40
21. 1.V Pour compter les nombres des clients
23.1.I Afficher montant total, le N° client, les dates dont les avances prépayées supérieur à 600
41
24.1.I Afficher le N°client dont les avances prépayées supérieur à 190
42
Conclusion
Comme conclusion, Pour construire une base de données pour une entreprise, il faut suivre
plusieurs étapes commençant avec une collection et analyse globale de données cohérents et structurés de
cette entreprise, faire ressortir tous les cardinalités qui nous permettant de bien formaliser un MCD qui
permet d'établir une représentation claire des données et définit les dépendances fonctionnelles de ces
données entre elles.
Une fois le MCD établi, nous sommes en mesure de le traduire en système logique MLD, ce
dernier est un outil formel utilisé pour comprendre l’organisation logique des données, et qui facilite la
mise en œuvre dans la base de données physique ,puis en passe a la partie pratique qui est la gestion ,
stockage, maintenance , la mise a jour et consultation des données par le logiciel : MySQL qui est un
système de gestion de base de données (SGBD).
On a choisis MySQL puisqu’il est très rapide, fiable, et facile à employer. MySQL a également un
ensemble de dispositifs très pratiques développés en coopération avec ses utilisateurs et également il a
prospéré pendant plusieurs années dans les secteurs compliqués de la production.
Donc, on a atteint notre objectif, qui étais comment facilité toutes les opérations effectuer au sein
d’un hôtel à partir d’un logiciel appelé Système de Gestion de Bases de Données (SGBD).
43
Annexe
Bibliographie
Jean-Marie Defrance, première application Web 2,0, « PHP », édition
EYROLLES 2011
JEAN DE LAGARDE , « Initiation à l’analyse des données » ,Nbre de pages
162 ,collection eco sup DUNOD 3ème édition 2004
Christian Soutou , « Apprendre SQL avec MySQL », EYROLLES
Webographie
http://www.accorhotels.com/fr/hotel-7145-sofitel-essaouira-mogador-golf-
spa/index.shtml
http://www.africanbusinessjournal.info/index.php?
option=com_content&view=article&id=702:cas-pratiques-de-management-de-
transition&catid=54:cahiers-du-manager&Itemid=411
http://search.codes-sources.com/r.aspx?
r=base+donnees+de+gestion+reservation+d+hotel&p=10
http://www.comscripts.com/scripts/?script=258
http://www.comscripts.com/scripts/php.mysql-client.258.html
http://www.1keydata.com/sql/sql.html
44
Les tables
Client
Chambre
Facture
45
Hôtel
Région
Réservation
46
Table des matières
Dédicace 1
Remerciement 2
Introduction générale 4
Introduction 7
I. Présentation du cas 16
47
5.1.V Création de la table réservation 22
6.1.V Création de la table effectuer 23
7.1.V Création de la table concerner 23
8.1.V Création de la table situer 24
9.1.V Insertion des données de la table chambre 24
10.1.V Insertion des données de la table hotel 25
11.1.V Insertion des données de la table situer 25
12.1.V Insertion des données de la table client 26
13.1.V Insertion des données de la table région 27
14.1.V Insertion des données de la table de réservation 28
15.1.V Insertion des données de la table facture 28
16.1.V Insertion des données de la table concerner 29
17.1.V Insertion des données de la table effectuer 30
18.1.V Insertion des données de la table situer 31
19.1.V Pour changé la saison de la réservation N°1 : printemps /été 32
20.1.V Pour compter les nombres des clients 33
21.1.V Afficher l’hôtel à la ville Ouarzazate 34
22.1.V Afficher montant total, le N° client, les dates dont les avances prépayées supérieur à 600 35
23.1.V Afficher le N°client dont les avances prépayées supérieur à 190 36
Conclusion 37
Annexe 38
Bibliographie 38
Webographie 38
Les tables 39
48