Conception de la base de données du système de gestion du stationnement des véhicules

Posted on


Conception de la base de données du système de gestion du stationnement des véhicules

Le projet de synthèse intitulé «Vehicle Parking Management System» est une plateforme qui permet à une organisation de gérer ses transactions de stationnement, telles que la réservation et les paiements. Ce système sera un avantage et apportera de la commodité aux clients en traitant simplement la réservation de parking via la plate-forme en ligne.

Cet article vous fournira la liste des tables et des champs / colonnes pour chaque table dans la conception de la structure de la base de données / du schéma du système de gestion du stationnement des véhicules. 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 gestion du stationnement des véhicules - Liste des tableaux
Conception de la base de données du système de gestion du stationnement des véhicules – Liste des tableaux

Cette conception de base de données comporte 9 tables avec leurs champs et colonnes respectifs ainsi que leurs relations les unes avec les autres.

tbl_vehicle – c’est le tableau qui stocke les informations du véhicule, et ce qui suit sont les colonnes / champs du tableau.

  • vehicule_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • vehicle_category_id – il s’agit d’une clé étrangère qui renvoie aux informations de catégorie de véhicule.
  • Vehicle_plate_number – le numéro de plaque d’immatriculation du véhicule.
  • vehicle_description – description et autres informations du véhicule telles que la couleur et d’autres informations pertinentes.
  • Vehicle_image – le système demande aux propriétaires de télécharger la photo de leur véhicule.
  • vehicle_owner_id – il s’agit d’une clé étrangère qui pointe vers le propriétaire du véhicule. La conception de ce tableau est que les propriétaires peuvent afficher et enregistrer plus d’un véhicule.

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

CREATE TABLE `tbl_vehicle` (
`vehicle_id` int(11) NOT NULL,
`vehicle_category_id` int(11) NOT NULL,
`vehicle_plate_number` varchar(15) NOT NULL,
`vehicle_description` varchar(100) NOT NULL,
`vehicle_image` blob NOT NULL,
`vehicle_owner_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_vehicle_category – ce tableau stocke les différentes catégories du véhicule.

  • vehicle_category_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • Vehicle_category_name – nom de la catégorie (scooters, voitures, motos, etc.).
  • user_id – l’utilisateur qui code / gère / met à jour les informations de catégorie de véhicule. Il s’agit d’une clé étrangère qui se connecte à la table utilisateur.

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

CREATE TABLE `tbl_vehicle_category` (
`vehicle_category_id` int(11) NOT NULL,
`vehicle_category_name` varchar(30) NOT NULL,
`user_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_vehicle_owner – les informations de profil du client ou du propriétaire du véhicule seront stockées dans ce tableau. Le tableau du propriétaire du véhicule contient les colonnes suivantes:

  • vehicle_owner_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • Vehicle_owner_name – le nom complet du propriétaire.
  • avatar – cela contiendra l’image de profil de la personne.
  • Vehicle_owner_contact – numéro de téléphone mobile du client.
  • vehicle_owner_email – adresse e-mail du client
  • owner_username – nom d’utilisateur souhaité du client.
  • owner_password – mot de passe souhaité du client.
  • état – la valeur de cette colonne est 0 ou 1, 0 signifie désactivé ou inactif, 1 est activé ou actif.
  • user_id – l’utilisateur qui accepte / approuve / désactive le profil client et l’enregistrement. Il s’agit d’une clé étrangère qui se connecte à la table utilisateur.

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

CREATE TABLE `tbl_vehicle_owner` (
`vehicle_owner_id` int(11) NOT NULL,
`vehicle_owner_name` varchar(30) NOT NULL,
`avatar` blob NOT NULL,
`vehicle_owner_contact` varchar(15) NOT NULL,
`vehicle_owner_email` varchar(30) NOT NULL,
`owner_username` varchar(30) NOT NULL,
`owner_password` varchar(30) NOT NULL,
`status` int(1) NOT NULL,
`user_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_parking_slot – ce tableau stocke les informations sur les emplacements de parking et comporte 4 colonnes.

  • parking_slot_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • parking_slot_number – le numéro de l’emplacement ou le numéro de l’aire de stationnement.
  • parking_slot_status – 0 pour disponible et 1 pour occupé 2 pour réservé. Ce champ sera mis à jour lorsqu’une réservation ou un paiement aura été traité.
  • user_id – l’utilisateur qui code / gère / met à jour les informations de catégorie de véhicule. Il s’agit d’une clé étrangère qui se connecte à la table utilisateur.

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

CREATE TABLE `tbl_parking_slot` (
`parking_slot_id` int(11) NOT NULL,
`parking_slot_number` int(4) NOT NULL,
`parking_slot_status` int(1) NOT NULL,
`user_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_booking – les transactions de réservation sont stockées dans ce tableau et les colonnes du tableau sont les suivantes:

  • booking_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • customer_id – clé étrangère qui renvoie aux informations du client (celui qui a traité la réservation)
  • Vehicle_id – clé étrangère qui renvoie à la table d’informations sur le véhicule.
  • duration_of_booking – il fait référence à la durée de la réservation (minimum 3 heures).
  • slot_id – clé étrangère qui relie les informations de l’emplacement de stationnement.
  • booking_status – statut de la réservation, 0 pour le traitement, 1 pour approuvé, 2 annulé, 3 rejeté, 4 terminé.
  • remarques – informations supplémentaires sur la transaction de réservation.
  • user_id – l’utilisateur qui a traité les informations de réservation.

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

CREATE TABLE `tbl_booking` (
`booking_id` int(11) NOT NULL,
`customer_id` int(11) NOT NULL,
`vehicle_id` int(11) NOT NULL,
`duration_of_booking` varchar(15) NOT NULL,
`slot_id` int(11) NOT NULL,
`booking_status` int(1) NOT NULL,
`remarks` varchar(100) NOT NULL,
`user_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_payment – les informations de paiement seront stockées et archivées sur cette table.

  • payment_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • booking_id – il s’agit du numéro de référence de la commande ou du service.
  • amount_due – le montant d’argent dû par le client au parking / réservation.
  • amount_paid – montant payé par le client.
  • remarques – informations complémentaires sur la transaction.
  • payment_status – statut du paiement (partiel, entièrement payé)
  • payé_par – personne qui a traité le paiement (il s’agit généralement des informations client).
  • user_id – l’utilisateur qui a traité les informations de paiement.

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

CREATE TABLE `tbl_payment` (
`payment_id` int(11) NOT NULL,
`booking_id` int(11) NOT NULL,
`amount_due` float NOT NULL,
`amount_paid` float NOT NULL,
`remarks` varchar(100) NOT NULL,
`payment_status` int(1) NOT NULL,
`paid_by` varchar(30) NOT NULL,
`user_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_setting– ce tableau stockera les informations de la blanchisserie ou de l’entreprise. Le tableau comporte 7 colonnes.

  • company_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • nom_entreprise – le nom complet de l’entreprise.
  • company_contact_person – personne de contact de l’entreprise
  • company_email – adresse e-mail officielle de l’entreprise
  • company_contact_number – coordonnées de l’entreprise (ligne fixe, mobile, etc.)
  • company_website – site officiel de l’entreprise (le cas échéant)
  • company_profile – cette colonne est ouverte pour tout contenu tel que l’historique de l’entreprise, les services proposés et toute autre information sur l’entreprise ou la boutique
  • user_id – l’utilisateur qui met à jour / gère le profil de l’entreprise. Il s’agit d’une clé étrangère qui se connecte à la table utilisateur.

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

CREATE TABLE `tbl_setting` (
`company_id` int(11) NOT NULL,
`company_name` varchar(50) NOT NULL,
`company_contact_person` varchar(30) NOT NULL,
`company_email` varchar(30) NOT NULL,
`company_contact_number` varchar(15) NOT NULL,
`company_website` varchar(30) NOT NULL,
`company_profile` varchar(250) NOT NULL,
`vendor_username` varchar(30) NOT NULL,
`vendor_password` varchar(30) NOT NULL,
`user_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

tbl_user – cette table stockera les informations du personnel qui peut accéder aux enregistrements du système.

  • user_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • nom d’utilisateur – nom d’utilisateur du personnel utilisé pour se connecter avec le mot de passe.
  • mot de passe – mot de passe du personnel utilisé pour se connecter avec le nom d’utilisateur.
  • avatar – cela contiendra l’image de profil de l’utilisateur.
  • fullname – le nom complet du personnel ou de l’utilisateur.
  • contact – numéro de contact du personnel (numéro de portable / téléphone portable).
  • email – adresse email du personnel / utilisateur.
  • user_category_id – le groupe d’utilisateurs ou la catégorie de l’utilisateur.
  • état – la valeur de cette colonne est 0 ou 1, 0 signifie désactivé ou inactif, 1 est activé ou actif.

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

CREATE TABLE `tbl_user` (
`user_id` int(11) NOT NULL,
`username` varchar(30) NOT NULL,
`password` varchar(30) NOT NULL,
`avatar` blob NOT NULL,
`fullname` varchar(50) NOT NULL,
`contact` varchar(15) NOT NULL,
`email` varchar(30) NOT NULL,
`user_category_id` int(1) NOT NULL,
`status` int(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

tbl_user_group – ce tableau stocke les informations du groupe d’utilisateurs qui incluent les fonctions auxquelles ils peuvent et ne peuvent pas accéder dans le système.

  • user_group_id – clé primaire de la table. Il est généralement défini sur auto_increment (la base de données donnera automatiquement à cette colonne une valeur commençant à 1).
  • nom_groupe – nom de la catégorie ou du groupe d’utilisateurs.
  • description – informations sur ce qu’est le groupe d’utilisateurs.
  • allow_add – cette colonne permet d’autoriser ou d’empêcher l’utilisateur d’ajouter un enregistrement.
  • allow_edit – cette colonne permet d’autoriser ou d’empêcher l’utilisateur de modifier ou de mettre à jour un enregistrement.
  • allow_delete – cette colonne permet d’autoriser ou d’empêcher l’utilisateur de supprimer ou de supprimer un enregistrement.
  • allow_print – cette colonne permet d’autoriser ou d’empêcher l’utilisateur d’imprimer un rapport.
  • allow_import – cette colonne permet d’autoriser ou d’empêcher l’utilisateur d’importer des enregistrements dans le système.
  • allow_export – cette colonne permet d’autoriser ou d’empêcher l’utilisateur d’exporter des enregistrements du système.

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

CREATE TABLE `tbl_user_group` (
`user_group_id` int(11) NOT NULL,
`group_name` varchar(30) NOT NULL,
`description` varchar(50) NOT NULL,
`allow_add` int(1) NOT NULL,
`allow_edit` int(1) NOT NULL,
`allow_delete` int(1) NOT NULL,
`allow_print` int(1) NOT NULL,
`allow_import` int(1) NOT NULL,
`allow_export` int(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Index des tables vidées

--
-- Indexes for table `tbl_booking`
--
ALTER TABLE `tbl_booking`
ADD PRIMARY KEY (`booking_id`),
ADD KEY `customer_id` (`customer_id`),
ADD KEY `vehicle_id` (`vehicle_id`),
ADD KEY `slot_id` (`slot_id`),
ADD KEY `user_id` (`user_id`);

--
-- Indexes for table `tbl_parking_slot`
--
ALTER TABLE `tbl_parking_slot`
ADD PRIMARY KEY (`parking_slot_id`),
ADD KEY `user_id` (`user_id`);

--
-- Indexes for table `tbl_payment`
--
ALTER TABLE `tbl_payment`
ADD PRIMARY KEY (`payment_id`),
ADD KEY `booking_id` (`booking_id`),
ADD KEY `user_id` (`user_id`);

--
-- Indexes for table `tbl_user`
--
ALTER TABLE `tbl_user`
ADD PRIMARY KEY (`user_id`),
ADD KEY `user_category_id` (`user_category_id`);

--
-- Indexes for table `tbl_user_group`
--
ALTER TABLE `tbl_user_group`
ADD PRIMARY KEY (`user_group_id`);

--
-- Indexes for table `tbl_vehicle`
--
ALTER TABLE `tbl_vehicle`
ADD PRIMARY KEY (`vehicle_id`),
ADD KEY `vehicle_owner_id` (`vehicle_owner_id`),
ADD KEY `vehicle_category_id` (`vehicle_category_id`);

--
-- Indexes for table `tbl_vehicle_category`
--
ALTER TABLE `tbl_vehicle_category`
ADD PRIMARY KEY (`vehicle_category_id`),
ADD KEY `user_id` (`user_id`);

--
-- Indexes for table `tbl_vehicle_owner`
--
ALTER TABLE `tbl_vehicle_owner`
ADD PRIMARY KEY (`vehicle_owner_id`),
ADD KEY `user_id` (`user_id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `tbl_booking`
--
ALTER TABLE `tbl_booking`
MODIFY `booking_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_parking_slot`
--
ALTER TABLE `tbl_parking_slot`
MODIFY `parking_slot_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_payment`
--
ALTER TABLE `tbl_payment`
MODIFY `payment_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_user`
--
ALTER TABLE `tbl_user`
MODIFY `user_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_user_group`
--
ALTER TABLE `tbl_user_group`
MODIFY `user_group_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_vehicle`
--
ALTER TABLE `tbl_vehicle`
MODIFY `vehicle_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_vehicle_category`
--
ALTER TABLE `tbl_vehicle_category`
MODIFY `vehicle_category_id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `tbl_vehicle_owner`
--
ALTER TABLE `tbl_vehicle_owner`
MODIFY `vehicle_owner_id` int(11) NOT NULL AUTO_INCREMENT;

Contraintes pour les tables vidées

--
-- Constraints for table `tbl_booking`
--
ALTER TABLE `tbl_booking`
ADD CONSTRAINT `tbl_booking_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `tbl_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbl_booking_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `tbl_vehicle_owner` (`vehicle_owner_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbl_booking_ibfk_3` FOREIGN KEY (`vehicle_id`) REFERENCES `tbl_vehicle` (`vehicle_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbl_booking_ibfk_4` FOREIGN KEY (`slot_id`) REFERENCES `tbl_parking_slot` (`parking_slot_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tbl_parking_slot`
--
ALTER TABLE `tbl_parking_slot`
ADD CONSTRAINT `tbl_parking_slot_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `tbl_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tbl_payment`
--
ALTER TABLE `tbl_payment`
ADD CONSTRAINT `tbl_payment_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `tbl_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbl_payment_ibfk_2` FOREIGN KEY (`booking_id`) REFERENCES `tbl_booking` (`booking_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tbl_user`
--
ALTER TABLE `tbl_user`
ADD CONSTRAINT `tbl_user_ibfk_1` FOREIGN KEY (`user_category_id`) REFERENCES `tbl_user_group` (`user_group_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tbl_vehicle`
--
ALTER TABLE `tbl_vehicle`
ADD CONSTRAINT `tbl_vehicle_ibfk_1` FOREIGN KEY (`vehicle_category_id`) REFERENCES `tbl_vehicle_category` (`vehicle_category_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tbl_vehicle_ibfk_2` FOREIGN KEY (`vehicle_owner_id`) REFERENCES `tbl_vehicle_owner` (`vehicle_owner_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tbl_vehicle_category`
--
ALTER TABLE `tbl_vehicle_category`
ADD CONSTRAINT `tbl_vehicle_category_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `tbl_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tbl_vehicle_owner`
--
ALTER TABLE `tbl_vehicle_owner`
ADD CONSTRAINT `tbl_vehicle_owner_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `tbl_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
COMMIT;
Conception de la base de données du système de gestion du stationnement des véhicules
Conception de la base de données du système de gestion du stationnement des véhicules

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

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *