Gestion de la gare routière

Автор работы: Пользователь скрыл имя, 17 Ноября 2013 в 19:51, курсовая работа

Описание работы

Une base de données (son abréviation est BD, en anglais DB, database) est une entité dans laquelle il est possible de stocker des données de façon structurée et avec le moins de redondance possible. Ces données doivent pouvoir être utilisées par des programmes, par des utilisateurs différents. Ainsi, la notion de base de données est généralement couplée à celle de réseau, afin de pouvoir mettre en commun ces informations, d'où le nom de base. On parle généralement de système d'information pour désigner toute la structure regroupant les moyens mis en place pour pouvoir partager des données.

Содержание работы

1. Considérations théoriques 3
1.1 Notion d’une Base de données 3
1.2 Avantages d’une base de données 3
1.3 Types de bases de données 4
2. Conception des bases de données relationnelles Ошибка! Закладка не определена.
2.1 Modélisation conceptuel Ошибка! Закладка не определена.
2.2 Modélisation logique – relationnelle Ошибка! Закладка не определена.
3. But du projet Ошибка! Закладка не определена.
4. Modèle conceptuel du projet 9
5. Modèle logique du projet Ошибка! Закладка не определена.
6. Modèle relationnel du projet Ошибка! Закладка не определена.
7. Création de la BD Ошибка! Закладка не определена.
8. Interrogations Ошибка! Закладка не определена.
Conclusion: 16

Файлы: 1 файл

Projet_d'anne_BDC.docx

— 217.52 Кб (Скачать файл)

 

 

Projet d’année

à Bases de données

Thème : Gestion de la gare routière

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Table of Contents

Table of Contents 2

1. Considérations théoriques 3

1.1 Notion d’une Base de données 3

1.2 Avantages d’une base de données 3

1.3 Types de bases de données 4

2. Conception des bases de données relationnelles Ошибка! Закладка не определена.

2.1 Modélisation conceptuel Ошибка! Закладка не определена.

2.2 Modélisation logique – relationnelle Ошибка! Закладка не определена.

3. But du projet Ошибка! Закладка не определена.

4. Modèle conceptuel du projet 9

5.  Modèle logique du projet Ошибка! Закладка не определена.

6. Modèle relationnel du projet Ошибка! Закладка не определена.

7. Création de la BD Ошибка! Закладка не определена.

8. Interrogations Ошибка! Закладка не определена.

Conclusion: 16

 

 

 

 

 

 

 

 

 

 

 

1. Considérations théoriques

1.1 Notion d’une Base de données

 

Une base de données (son abréviation est BD, en anglais DB, database) est une entité dans laquelle il est possible de stocker des données de façon structurée et avec le moins de redondance possible. Ces données doivent pouvoir être utilisées par des programmes, par des utilisateurs différents. Ainsi, la notion de base de données est généralement couplée à celle de réseau, afin de pouvoir mettre en commun ces informations, d'où le nom de base. On parle généralement de système d'information pour désigner toute la structure regroupant les moyens mis en place pour pouvoir partager des données.

Figure 1 Database architecture


 

 

 

 

 

 

 

 

 

 

 

 

1.2 Avantages d’une base de données

On va présenter quelques avantages pour l’utilisation d’une base de données : 

  • La gestion efficace et facile d’une grande quantité d’informations. Celui-ci vous permettra d’accomplir rapidement, et avec beaucoup moins d’efforts, un grand nombre de tâches auparavant longues et fastidieuses. 
  • Une base de données permet de mettre des données à la disposition d'utilisateurs pour une consultation, une saisie ou bien une mise à jour, tout en s'assurant des droits accordés à ces derniers. Cela est d'autant plus utile que les données informatiques sont de plus en plus nombreuses.
  • Une base de données peut être locale, c'est-à-dire utilisable sur une machine par un utilisateur, ou bien répartie, c'est-à-dire que les informations sont stockées sur des machines distantes et accessibles par réseau.
  • L'avantage majeur de l'utilisation de bases de données est la possibilité de pouvoir être accédées par plusieurs utilisateurs simultanément.

1.3 Types de bases de données

Il existe 4 types de bases de données :

  1. BD Hiérarchiques: les plus anciennes fondées sur une modélisation arborescente des données.
  2. BD Relationnelles: organisation des données sous forme de tables et exploitation à l’aide d’un langage déclaratif (ex: Oracle, mySQL, Access).
  3. BD Déductives: organisation de données sous forme de table et exploitation à l’aide d’un langage logique.

BD Objets: organisation des données sous forme d’instances de classes hiérarchisées qui possèdent leurs propres méthodes d’exploitation.

 

1.2 Description des documents d'entrée et de messages

En conséquence, la base de données «Bus»  utilise les entrées suivantes:

  • informations par les conducteurs
  • informations sur les bus
  • informations sur la destination
  • informations sur les itinéraires de trafic.

1.3 Modèle de base de données infologiques

L'objet de conception infologique - fournir la plus naturelle pour l'homme du moyen de collecte et de présentation de l'information qui doit être stockée dans la base de données créée. Par conséquent infologique essayer de construire un modèle similaire au langage naturel. Les éléments structurels modèles infologiques de base sont des entités, des relations entre eux et leurs propriétés.

2.1.1 Description des entités

Conformément à la description du domaine ont été obtenus les entités suivantes:

"driver" - contient des informations sur les chauffeurs d'autobus;

"Bus" - contient des informations sur les bus;

"station" - contient des informations sur les employés de la société;

"town" - contient des informations sur la destination;

"route" - contient des informations sur les itinéraires de déplacement.

1. Le table conducteur (drivers) contient:

driver_id - code unique du conducteur;

driver_fio - nom du conducteur.

2. Le table bus (Autobus) contient:

bus_id - code unique de l'autobus;

gos_number - le numéro d'enregistrement de l'autobus;

bus_name - bus marque;

driver_id - un code unique pour le conducteur.

3. Tableau gare (gare routière) contient:

station_id - code unique de l'autobus;

station_name - le nom de la station.

4. Table ville (Destinations) contient:

town_id - code unique de la destination;

town_name - le nom de la destination.

5. Tableau itinéraire (routes) contient:

route_id - un code de routage unique,

articles time_out-temps;

arrivée TIME_IN-temps;

town_id - code unique de la destination;

station_id - code unique de l'autobus;

bus_id - un bus de code unique.

2.1.2 Relations

Communication - l'association de deux ou plusieurs entités. Si le but de la base de données a été seulement de garder des données indépendantes séparées, sa structure pourrait être très simple. Cependant, l'une des principales exigences pour l'organisation de la base de données - est de veiller à la possibilité de trouver d'autres entités de la candidature, pour lesquels vous avez besoin d'installer un lien entre eux.

Modèle «entité - relation" est basée sur les 3 principaux éléments structurels:

     Essence

- attribut.

- Communication.

Les relations entre les tables dans la base de données peuvent être saisies dans les types suivants:

Le ratio «one to one» (1:1) signifie que chaque enregistrement d'une table correspond à un seul enregistrement d'une autre table;

Le ratio de «un à plusieurs» (1: M) se produit quand un enregistrement est lié à beaucoup d'autres;

Le taux de " plusieurs à un " signifie que de nombreux enregistrements associés à un ( M 1 ) ;

Le ratio de " many to many " (M : N) surgit entre deux tables dans les cas où :

Un enregistrement de la première table peut être associé à plus d'une entrée de la seconde table ;

Un enregistrement de la seconde table peut être associé  à plus d'une entrée de la première table .

Un inconvénient de ce modèle est que les mêmes éléments peuvent servir à la fois comme substance et comme un attribut et la qualité de la communication . Dans ce cas , nous supposons que chaque objet ne peut agir comme une composante structurelle . Le schéma du modèle de «l'entité - relation" est donnée en annexe A.

Dans le projet de cours utilisé les types de relations suivantes (tableau 3.1) :

Tableau 3.1 - Classification des obligations

nr

table parent

la table fille

Type de connexion

1

driver

bus

1:M

2

bus

route

1:M

3

station

route

1:M

4

town

route

1:M


 

Le tableau 3.1 présente la classification des relations entre les tables. Communication comptait parmi les tables «pilote - bus» indique qu'un pilote peut fonctionner sur plusieurs bus. Le second lien «bus - itinéraire» est de type «1: M», comme un bus peut fonctionner sur plusieurs routes. Le troisième lien «gare - itinéraire» indique que c une station peut être envoyé  par différentes voies. Le quatrième lien «ville - itinéraire»  indique que dans un seul endroit peut être des voies différentes.

Modèle entité-association


Tableau 3.7 Cle

table

cle

type de clé

Drivers

Driver_id

primary

Station

Station_id

primary

Town

Town_id

primary

Bus

Bus_id

primary

Bus

Driver_id

regular

Route

Route_id

primary

Route

Town_id

regular

Route

Bus_id

regular

Route

Station_id

regular


 

Voici une partie des tables de base de données. Pour chaque domaine, la table doit spécifier la taille du champ (nombre de caractères), le type. Pour les clés primaires d'interdire les valeurs NULL. Pour les autres domaines, la capacité à prévenir les valeurs NULL déterminées par la sémantique du domaine.

Table 5.1.1 drivers

l'attribut name

le type de champ

la taille des champs

admissibilité

nuls

Driver_id

Int

4

Not null

Driver_fio

Varchar

50

Not null


 

Table 5.1.2 bus

l'attribut name

le type de champ

la taille des champs

admissibilité

nuls

Bus_id

Int

4

Not null

bus_name

Varchar

50

Not null

Gos_number

Varchar

10

Not null

Driver_id

Int

4

Not null


 

Table 5.1.3 station

l'attribut name

le type de champ

la taille des champs

admissibilité

nuls

Station_id

Int

4

Not null

Station_name

Varchar

50

Not null


 

Table 5.1.4 town

l'attribut name

le type de champ

la taille des champs

admissibilité

nuls

Town_id

Int

4

Not null

Town_name

Varchar

50

Not null


 

 

 

Table 5.1.5 route

l'attribut name

le type de champ

la taille des champs

admissibilité

nuls

Route_id

Int

4

Not null

Time_in

Varchar

8

Not null

Time_out

Varchar

8

Not null

Bus_id

Int

4

Not null

Town_id

Int

4

Not null

Station_id

Int

4

Not null


 

ANNEXE 2

 

  1. Les informations de conception de l'échantillon à partir de la base de données

Un des moyens les plus efficaces et polyvalents pour récupérer des données à partir des tables de base de données est d'utiliser la requête SQL.

Dans la base de données développée fournit les demandes suivantes:

 

    1. recherche simple

SELECT *FROM drivers

SELECT *FROM town

SELECT *FROM station

SELECT *FROM bus

SELECT *FROM route

    1. Valeurs calculées des échantillons

SELECT town_name, COUNT(route_id) as count_ FROM route INNER JOIN town;

on route.town_id = town.town_id GROUP BY town_name

 

3L'échantillonnage dans une certaine gamme

SELECT * FROM route WHERE route.time_out BETWEEN '10-11' AND '14-00'

 

  1. Récupération en utilisant des modèles

SELECT * FROM town WHERE town_name like 'М%'

 

  1. Une simple requête triée

SELECT bus.bus_name,bus.gos_number FROM bus as bus ORDER BY bus.bus_Name

 

 

  1. L'échantillon avec la commande

 

SELECT * from town order by town_name

SELECT t.town_name FROM town as t;

WHERE t.town_id in (SELECT route.town_id FROM route HAVING COUNT(*) between min_

AND max_ group BY town_id ) ORDER BY town_name

 

  1. Récupération en utilisant l'opérateur BETWEEN

 

SELECT t.town_name FROM town as t;

WHERE t.town_id in (SELECT route.town_id FROM route HAVING COUNT(*) between min_

AND max_ group BY town_id ) ORDER BY town_name

 

  1. L'échantillonnage de tables liées

 

SELECT town_name FROM town, route, bus

WHERE bus.driver_id = ident AND

route.bus_id = bus.bus_id AND

route.town_id = town.town_id

 

  1. L'utilisation du regroupement des données dans les demandes d'organisation

 

SELECT driver_fio, coUNT(route_id) as count_ FROM route, bus, drivers

WHERE route.bus_id = bus.bus_id AND

bus.driver_id = drivers.driver_id GROUP BY driver_fio ORDER BY driver_fio

 

  1. Récupération utilisant l'opérateur de jointure naturelle

 

SELECT bus.bus_name, driver_fio FROM bus INNER JOIN

drivers ON

bus.driver_id = drivers.driver_id

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ANNEXE 1 du code des objets de base de données

# Host: localhost  (Version: 5.5.27)

# Date: 2013-10-06 22:10:37

# Generator: MySQL-Front 5.2  (Build 5.76)

 

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;

/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;

/*!40101 SET NAMES utf8 */;

/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE */;

/*!40101 SET SQL_MODE='' */;

/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES */;

/*!40103 SET SQL_NOTES='ON' */;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS */;

/*!40014 SET UNIQUE_CHECKS=0 */;

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS */;

/*!40014 SET FOREIGN_KEY_CHECKS=0 */;

 

DROP DATABASE IF EXISTS `bus`;

CREATE DATABASE `bus` /*!40100 DEFAULT CHARACTER SET utf8 */;

USE `bus`;

 

#

# Source for table "bus"

#

 

DROP TABLE IF EXISTS `bus`;

CREATE TABLE `bus` (

  `Bus_id` int(10) NOT NULL DEFAULT '0',

  `bus_name` char(50) DEFAULT NULL,

  `Gos_number` char(50) DEFAULT NULL,

  `Driver_id` int(20) DEFAULT NULL,

  PRIMARY KEY (`Bus_id`),

  KEY `Driver_id` (`Driver_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

#

# Data for table "bus"

#

 

INSERT INTO `bus` VALUES (1,'MAZ','BR ZD 002',2),(2,'MERCEDES','ED RT 656',5),(3,'MERCEDES','OC YU 976',1),(4,'ZAZ','RS YU 978',4),(5,'URAL','SD IO 346',3),(6,'MERCEDES','OR HG 816',7),(7,'MAZ','C GJ 493',6);

 

#

# Source for table "drivers"

#

 

DROP TABLE IF EXISTS `drivers`;

CREATE TABLE `drivers` (

  `Driver_id` int(11) NOT NULL DEFAULT '0',

  `Driver_fio` char(50) DEFAULT NULL,

  PRIMARY KEY (`Driver_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

#

# Data for table "drivers"

#

 

INSERT INTO `drivers` VALUES (1,'Moraru'),(2,'Cimpoi'),(3,'Neculcea'),(4,'Margine'),(5,'vasilache'),(6,'Negru'),(7,'Rosca');

 

#

# Source for table "route"

#

 

DROP TABLE IF EXISTS `route`;

CREATE TABLE `route` (

  `Route_id` int(10) NOT NULL DEFAULT '0',

  `Time_in` char(20) DEFAULT NULL,

  `Time_out` char(20) DEFAULT NULL,

  `Bus_id` int(10) DEFAULT NULL,

  `Town_id` int(10) DEFAULT NULL,

  `Station_id` int(10) DEFAULT NULL,

  PRIMARY KEY (`Route_id`),

  KEY `Bus_id` (`Bus_id`),

  KEY `Town_id` (`Town_id`),

  KEY `Station_id` (`Station_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

#

# Data for table "route"

#

 

INSERT INTO `route` VALUES (1,'2013-10-03 17:00:00','2013-10-03 19:00:00',3,5,7),(2,'2013-10-04 21:52:45','2013-10-04 23:52:53',1,2,2),(3,'2013-10-04 22:53:24','2013-10-06 23:53:33',7,6,6),(4,'2013-10-05 11:54:22','2013-10-05 15:54:30',2,3,3),(5,'2013-10-05 14:54:52','2013-10-05 16:54:59',5,7,8),(6,'2013-10-06 09:55:33','2013-10-06 11:55:40',4,4,4),(7,'2013-10-06 12:56:04','2013-10-06 16:56:09',6,2,1);

 

#

# Source for table "station"

#

 

DROP TABLE IF EXISTS `station`;

CREATE TABLE `station` (

  `Station_id` int(10) NOT NULL DEFAULT '0',

  `Station_name` char(50) DEFAULT NULL,

  PRIMARY KEY (`Station_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

#

# Data for table "station"

#

 

INSERT INTO `station` VALUES (1,'Lipcani 1'),(2,'Lipcani 2'),(3,'Cupcini'),(4,'A 6'),(5,'A 4'),(6,'Gara Singerei'),(7,'Gara Balti'),(8,'Gara Orhei');

 

#

# Source for table "town"

#

 

DROP TABLE IF EXISTS `town`;

CREATE TABLE `town` (

  `Town_id` int(10) NOT NULL DEFAULT '0',

  `Town_name` char(50) DEFAULT NULL,

  PRIMARY KEY (`Town_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

#

# Data for table "town"

#

 

INSERT INTO `town` VALUES (1,'Criva'),(2,'Lipcani'),(3,'Edinet'),(4,'Riscani'),(5,'Balti'),(6,'Singerei'),(7,'Orhei');

 

#

#  Foreign keys for table bus

#

 

ALTER TABLE `bus`

ADD CONSTRAINT `bus_ibfk_1` FOREIGN KEY (`Driver_id`) REFERENCES `drivers` (`Driver_id`);

 

#

#  Foreign keys for table route

#

 

ALTER TABLE `route`

ADD CONSTRAINT `route_ibfk_1` FOREIGN KEY (`Bus_id`) REFERENCES `bus` (`Bus_id`),

ADD CONSTRAINT `route_ibfk_2` FOREIGN KEY (`Town_id`) REFERENCES `town` (`Town_id`),

ADD CONSTRAINT `route_ibfk_3` FOREIGN KEY (`Station_id`) REFERENCES `station` (`Station_id`);

 

 

/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;

/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;

/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;

/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

 

 

Conclusion:

En effectuant ce projet d’année, j’ai fait connaissance avec les étapes de travail avec une BD relationnelle qui est une collection de tableaux associés entre eux a base d’une colonne commune. Le system de BD relationnelles Oracle nous met a la disposition une BD facile en compréhension, en utilisation et suffisamment flexible pour satisfaire toutes les nécessités de la BD.

Информация о работе Gestion de la gare routière