Conception de la base de données du système de réservation de bus


Conception de la base de données du système de réservation de bus

Le projet intitulé système de réservation de bus est une plateforme en ligne destinée aux voyageurs et navetteurs de bus et à la direction de la compagnie de bus.

Cet article vous fournira la liste des tables et des entités pour chaque table dans le développement du système de réservation de bus. L’équipe fournira plus tard un didacticiel vidéo sur la création de la base de données dans PHPMyAdmin.

Conception de la base de données du système de réservation de bus
Conception de la base de données du système de réservation de bus

tblbus – c’est le tableau qui contiendra les informations du bus et voici la liste des attributs ou des colonnes de champ.

  • bus_id – c’est la clé primaire de la table et sert de valeur unique de la table et généralement définie sur auto_increment.
  • bus_number – le numéro de bus est le numéro attribué par l’entreprise à des fins de surveillance.
  • bus_plate_number – il fait référence au numéro d’immatriculation du véhicule du bus.
  • bus_type – le champ de type de bus a deux valeurs; les unités climatisées et non climatisées.
  • capacité – ce champ représente le nombre total de personnes que le bus peut accueillir, y compris le conducteur.
  • user_id – c’est la clé étrangère de la table qui pointe vers l’utilisateur qui a encodé les informations de bus.

Créer une instruction SQL – l’instruction ci-dessous est utilisée pour créer le tblbus, copiez l’instruction sql et collez-la dans le gestionnaire / onglet sql de votre phpmyadmin.

CREATE TABLE IF NOT EXISTS `tblbus` (
`bus_id` int(11) NOT NULL AUTO_INCREMENT,
`bus_number` varchar(15) NOT NULL,
`bus_plate_number` varchar(15) NOT NULL,
`bus_type` int(1) NOT NULL,
`capacity` int(3) NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`bus_id`),
KEY `user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tbldriver – c’est la table qui stockera les enregistrements des informations du pilote et la table a 3 champs et colonne.

  • driver_id – il s’agit de la clé primaire de la table et sert de valeur unique de la table et généralement définie sur auto_increment.
  • nom_pilote – le nom complet du pilote.
  • driver_contact – les coordonnées du conducteur, de préférence le numéro de téléphone portable.
  • user_id – il s’agit de la clé étrangère de la table qui pointe vers l’utilisateur qui a encodé les informations du pilote.

Créer une instruction SQL – l’instruction ci-dessous est utilisée pour créer le tbldriver, copiez l’instruction sql et collez-la dans le gestionnaire / onglet sql de votre phpmyadmin.

CREATE TABLE IF NOT EXISTS `tbldriver` (
`driver_id` int(11) NOT NULL AUTO_INCREMENT,
`driver_name` varchar(50) NOT NULL,
`driver_contact` varchar(15) NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`driver_id`),
KEY `user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblcustomer – les informations client sont stockées dans ce tableau et comportent les entités suivantes:

  • customer_id – il s’agit de la clé primaire de la table et sert de valeur unique de la table et généralement définie sur auto_increment.
  • customer_name – le nom complet du client.
  • customer_contact – c’est la colonne qui stocke le numéro de téléphone portable du client pour la notification sms de la réservation.
  • customer_email – stocke l’adresse e-mail des clients.
  • nom d’utilisateur – le nom d’utilisateur souhaité du client.
  • mot de passe – le mot de passe souhaité du client.
  • account_status – l’état du compte indique si le compte est actif ou non.
  • user_id – il s’agit de la clé étrangère de la table qui indique à l’utilisateur qui a codé les informations client.
lire plus  Google BigQuery et PostgreSQL: Big Query pour l'analyse de données - Cours Udemy gratuits

Créer une instruction SQL – la déclaration ci-dessous est utilisée pour créer le client, copier la déclaration sql et la coller dans le gestionnaire / onglet sql de votre phpmyadmin.

CREATE TABLE IF NOT EXISTS `tblcustomer` (
`customer_id` int(11) NOT NULL AUTO_INCREMENT,
`customer_name` varchar(50) NOT NULL,
`customer_contact` varchar(15) NOT NULL,
`customer_email` varchar(30) NOT NULL,
`username` varchar(30) NOT NULL,
`password` varchar(30) NOT NULL,
`account_status` int(1) NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`customer_id`),
KEY `user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tbltravelschedule – l’administrateur encodera le programme de voyage tous les jours et il sera stocké et archivé dans ce tableau. Le tableau des horaires de voyage a les attributs suivants:

  • schedule_id – il s’agit de la clé primaire de la table et sert de valeur unique de la table et généralement définie sur auto_increment.
  • bus_id – clé étrangère qui pointe vers les informations de bus.
  • driver_id – clé étrangère qui pointe vers les informations du pilote.
  • start_point – cette colonne représente le point d’origine du bus.
  • destination – est le point où une ligne de bus
  • schedule_date – fait référence à la date du voyage.
  • départ_heure – fait référence à l’heure de départ.
  • estimation_arrivée_heure – l’heure à laquelle le bus arrivera à destination, estimation uniquement.
  • fare_amount – le montant du tarif à payer par le navetteur.
  • remarques – notes importantes sur le voyage.
  • user_id – il s’agit de la clé étrangère de la table qui pointe vers l’utilisateur qui a encodé les informations de programme de voyage.

Créer une instruction SQL – l’instruction ci-dessous est utilisée pour créer le tbltravelschedule, copiez l’instruction sql et collez-la dans le gestionnaire / onglet sql de votre phpmyadmin.

 CREATE TABLE IF NOT EXISTS `tbltravelschedule` (
`schedule_id` int(11) NOT NULL AUTO_INCREMENT,
`bus_id` int(11) NOT NULL,
`driver_id` int(11) NOT NULL,
`starting_point` varchar(30) NOT NULL,
`destination` varchar(30) NOT NULL,
`schedule_date` date NOT NULL,
`departure_time` time NOT NULL,
`estimated_arrival_time` time NOT NULL,
`fare_amount` float NOT NULL,
`remarks` varchar(100) NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`schedule_id`),
KEY `bus_id` (`bus_id`,`driver_id`,`user_id`),
KEY `user_id` (`user_id`),
KEY `driver_id` (`driver_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblbooking – la table de réservation est la table qui contient et stocke les informations de réservation du client. La table de réservation a 9 attributs et ce sont les suivants:

  • booking_id – c’est la clé primaire de la table et sert de valeur unique de la table et généralement définie sur auto_increment.
  • schedule_id – il s’agit de la clé étrangère qui pointe vers la planification sélectionnée par le client.
  • customer_id – il s’agit de la clé étrangère qui pointe vers les informations client.
  • number_of_seats – le nombre de sièges que le client souhaite réserver.
  • fare_amount – le montant par siège.
  • total_amount – montant total à payer.
  • date_of_booking – date de réservation.
  • booking_status – le statut de la réservation indique si la réservation a été approuvée ou annulée.
  • user_id – il s’agit de la clé étrangère de la table qui indique à l’utilisateur qui a traité les informations de réservation.
lire plus  Boreas - 618 Un robot pompier - iNetTutor.com

Créer une instruction SQL – l’instruction ci-dessous est utilisée pour créer le tblbooking, copiez l’instruction sql et collez-la dans le gestionnaire / onglet sql de votre phpmyadmin.

CREATE TABLE IF NOT EXISTS `tblbooking` (
`booking_id` int(11) NOT NULL AUTO_INCREMENT,
`schedule_id` int(11) NOT NULL,
`customer_id` int(11) NOT NULL,
`number_of_seats` int(2) NOT NULL,
`fare_amount` float NOT NULL,
`total_amount` float NOT NULL,
`date_of_booking` datetime NOT NULL,
`booking_status` int(1) NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`booking_id`),
KEY `schedule_id` (`schedule_id`,`customer_id`,`user_id`),
KEY `user_id` (`user_id`),
KEY `customer_id` (`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblpayment – la table de paiement est la table qui enregistre la transaction de paiement des clients.

  • payment_id – il s’agit de la clé primaire de la table et sert de valeur unique de la table et est généralement définie sur auto_increment.
  • booking_id – c’est la clé étrangère qui pointe vers les informations de réservation.
  • amount_paid – le montant payé par le client.
  • date_paiement – fait référence à la date de paiement.
  • user_id – il s’agit de la clé étrangère qui pointe vers l’utilisateur qui a traité le paiement.

Créer une instruction SQL – la déclaration ci-dessous est utilisée pour créer le tblpayment, copiez l’instruction sql et collez-la dans le gestionnaire / onglet sql de votre phpmyadmin.

CREATE TABLE IF NOT EXISTS `tblpayment` (
`payment_id` int(11) NOT NULL AUTO_INCREMENT,
`booking_id` int(11) NOT NULL,
`amount_paid` float NOT NULL,
`payment_date` date NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`payment_id`),
KEY `booking_id` (`booking_id`,`user_id`),
KEY `user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tbluser – c’est le tableau qui stocke les informations des utilisateurs qui peuvent accéder au système.

  • user_id – c’est la clé primaire de la table et sert de valeur unique de la table et généralement définie sur auto_increment.
  • full_name – nom complet de l’employé.
  • contact_no – coordonnées de l’employé.
  • email_address – adresse e-mail de l’employé.
  • username – le nom d’utilisateur attribué à l’employé
  • mot de passe utilisateur – le mot de passe attribué à l’employé, il est autorisé à changer son mot de passe.
  • account_category – la catégorie de compte fait référence à son rôle professionnel, comme le responsable, l’encodeur, le caissier, etc.
  • account_status – l’état du compte indique si le compte est actif ou non.

Créer une instruction SQL – l’instruction ci-dessous est utilisée pour créer le tbluser, copiez l’instruction sql et collez-la dans le gestionnaire / onglet sql de votre phpmyadmin.

CREATE TABLE IF NOT EXISTS `tbluser` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`full_name` varchar(50) NOT NULL,
`contact_no` varchar(15) NOT NULL,
`email_address` varchar(30) NOT NULL,
`username` varchar(30) NOT NULL,
`userpassword` varchar(30) NOT NULL,
`account_category` int(1) NOT NULL,
`account_status` int(1) NOT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Conception de la base de données du système de réservation de bus - Liste des tableaux
Conception de la base de données du système de réservation de bus – Liste des tableaux

Contraintes pour les tables vidées

– Contraintes pour la table `tblbooking`

ALTER TABLE `tblbooking`
ADD CONSTRAINT `tblbooking_ibfk_3` FOREIGN KEY (` schedule_id`) REFERENCES `tbltravelschedule` (` schedule_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblbooking_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblbooking_ibfk_2` FOREIGN KEY (` customer_id`) REFERENCES `tblcustomer` (` customer_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tblbus`

ALTER TABLE `tblbus`
ADD CONSTRAINT `tblbus_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;

lire plus  ELearning for Beauty Care Chapter 1 Documentation - iNetTutor.com


– Contraintes pour la table `tblcustomer`

ALTER TABLE `tblcustomer`
ADD CONSTRAINT `tblcustomer_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tbldriver`

ALTER TABLE `tbldriver`
ADD CONSTRAINT `tbldriver_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tblpayment`

ALTER TABLE `tblpayment`
ADD CONSTRAINT `tblpayment_ibfk_2` FOREIGN KEY (` booking_id`) REFERENCES `tblbooking` (` booking_id`) ON SUPPRIMER LA CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblpayment_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tbltravelschedule`

ALTER TABLE `tbltravelschedule`
ADD CONSTRAINT `tbltravelschedule_ibfk_3` FOREIGN KEY (` bus_id`) REFERENCES `tblbus` (` bus_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbltravelschedule_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbltravelschedule_ibfk_2` FOREIGN KEY (` driver_id`) REFERENCES `tbldriver` (` driver_id`) ON DELETE CASCADE ON UPDATE CASCADE;

Contraintes pour les tables vidées


– Contraintes pour la table `tblbooking`

ALTER TABLE `tblbooking`
ADD CONSTRAINT `tblbooking_ibfk_3` FOREIGN KEY (` schedule_id`) REFERENCES `tbltravelschedule` (` schedule_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblbooking_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblbooking_ibfk_2` FOREIGN KEY (` customer_id`) REFERENCES `tblcustomer` (` customer_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tblbus`

ALTER TABLE `tblbus`
ADD CONSTRAINT `tblbus_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tblcustomer`

ALTER TABLE `tblcustomer`
ADD CONSTRAINT `tblcustomer_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tbldriver`

ALTER TABLE `tbldriver`
ADD CONSTRAINT `tbldriver_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table «tblpayment»

ALTER TABLE `tblpayment`
ADD CONSTRAINT `tblpayment_ibfk_2` FOREIGN KEY (` booking_id`) REFERENCES `tblbooking` (` booking_id`) ON SUPPRIMER LA CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblpayment_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE;


– Contraintes pour la table `tbltravelschedule`

ALTER TABLE `tbltravelschedule`
ADD CONSTRAINT `tbltravelschedule_ibfk_3` FOREIGN KEY (` bus_id`) REFERENCES `tblbus` (` bus_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbltravelschedule_ibfk_1` FOREIGN KEY (` user_id`) REFERENCES `tbluser` (` user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbltravelschedule_ibfk_2` FOREIGN KEY (` driver_id`) REFERENCES `tbldriver` (` driver_id`) ON DELETE CASCADE ON UPDATE CASCADE;

Téléchargement gratuit du fichier .sql

Notre équipe peut modifier le projet en fonction de vos besoins commerciaux spécifiques.

Vous pouvez visiter notre Facebook page pour plus d’informations, demandes de renseignements et commentaires.

Louer notre équipe pour faire le projet.

commentaires

commentaires





Telecharger ici

Laisser un commentaire

Aller au contenu principal