Conception de la base de données du système de commande alimentaire en ligne


Conception de la base de données du système de commande alimentaire en ligne

Le système de commande de nourriture en ligne est une plate-forme Web conçue pour répondre aux commandes des clients via cette plate-forme.

Cet article vous fournira la liste des tables et des entités pour chaque table dans le développement du système de commande de nourriture en ligne. L’équipe fournira plus tard un didacticiel vidéo sur la façon de créer la base de données dans PHPMyAdmin.

Conception de la base de données du système de commande d'aliments en ligne - Liste des tableaux
Conception de la base de données du système de commande d’aliments en ligne – Liste des tableaux

tblmenu – ce tableau stockera la liste des menus / aliments. Il comporte 3 colonnes comme présenté ci-dessous.

  • menu_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_menu – le nom du menu.
  • prix – la quantité au détail de la nourriture.
  • menu_type_id – il s’agit d’une clé étrangère qui renvoie au tblmenutype, cette colonne fait référence au type de menu ou à la catégorie à laquelle appartient l’aliment.
  • menu_image – l’image du menu ou de la nourriture.
  • ingrédients – la liste spécifique des ingrédients utilisés dans le menu / la nourriture.
  • menu_status – cela fait référence à la disponibilité du menu; 0 signifie non disponible, 1 signifie disponible.

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

CREATE TABLE IF NOT EXISTS `tblmenu` (
`menu_id` int(11) NOT NULL AUTO_INCREMENT,
`menu_name` varchar(100) NOT NULL,
`price` float NOT NULL,
`menu_type_id` int(11) NOT NULL,
`menu_image` blob NOT NULL,
`ingredients` varchar(500) NOT NULL,
`menu_status` int(1) NOT NULL,
PRIMARY KEY (`menu_id`),
KEY `menu_type_id` (`menu_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblmenutype – ce tableau contient les enregistrements des différentes catégories d’aliments. Le tableau comporte 3 colonnes.

  • menu_type_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).
  • type_name – le nom de la catégorie du menu.
  • description – description ou brève explication sur le type de menu.

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

CREATE TABLE IF NOT EXISTS `tblmenutype` (
`menu_type_id` int(11) NOT NULL AUTO_INCREMENT,
`type_name` varchar(50) NOT NULL,
`description` varchar(100) NOT NULL,
PRIMARY KEY (`menu_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblcustomer – les informations du client seront stockées dans ce tableau et il comporte 11 colonnes.

  • customer_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_first_name – prénom du client.
  • customer_last_name – nom de famille du client.
  • customer_middle_name – deuxième prénom du client.
  • customer_email – adresse e-mail du client. La notification et la confirmation des commandes seront envoyées dans l’e-mail du client.
  • customer_phone_number – numéro de téléphone portable du client. La notification et la confirmation des commandes seront envoyées dans l’e-mail du client
  • customer_landline – contact fixe du client
  • profile_image – image de profil du client.
  • customer_username – nom d’utilisateur souhaité du client.
  • customer_password – mot de passe souhaité du client.
  • account_status – l’état du compte indique si le client est toujours actif ou non.
lire plus  Créer un magasin de commerce électronique affilié Amazon à partir de zéro - Cours Udemy gratuits

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

CREATE TABLE IF NOT EXISTS `tblcustomer` (
`customer_id` int(11) NOT NULL AUTO_INCREMENT,
`customer_first_name` varchar(30) NOT NULL,
`customer_last_name` varchar(30) NOT NULL,
`customer_middle_name` varchar(30) NOT NULL,
`customer_email` varchar(50) NOT NULL,
`customer_phone_number` varchar(15) NOT NULL,
`customer_landline` varchar(15) NOT NULL,
`profile_image` blob NOT NULL,
`customer_username` varchar(30) NOT NULL,
`customer_password` varchar(30) NOT NULL,
`account_status` int(1) NOT NULL,
PRIMARY KEY (`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tbluser – les informations de l’utilisateur autorisé du système sont stockées dans ce tableau et il comporte 6 colonnes.

  • 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).
  • full_name – nom complet de l’utilisateur.
  • contact – informations de contact (téléphone ou ligne fixe).
  • email_address – adresse e-mail de l’utilisateur.
  • nom d’utilisateur – nom d’utilisateur de l’utilisateur.
  • mot de passe – mot de passe de l’utilisateur.

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(100) NOT NULL,
`contact` varchar(50) NOT NULL,
`email_address` varchar(50) NOT NULL,
`username` varchar(30) NOT NULL,
`password` varchar(30) NOT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblorder – les commandes des clients sont stockées dans le tblorder et ce tableau comporte 6 colonnes.

  • order_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 – il s’agit de la clé étrangère qui renvoie à la table customer. Il fait référence au client qui a commandé la nourriture.
  • order_date – la date de la commande.
  • total_amount – le montant à payer par le client
  • order_status – état de la commande (0-en attente, 1-confirmé, 2-annulé).
  • traité_by – il s’agit d’une clé étrangère qui se connecte ou se lie à la table utilisateur. Il fait référence à l’utilisateur qui a traité la transaction.

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

CREATE TABLE IF NOT EXISTS `tblorder` (
`order_id` int(11) NOT NULL AUTO_INCREMENT,
`customer_id` int(11) NOT NULL,
`order_date` date NOT NULL,
`total_amount` float NOT NULL,
`order_status` int(1) NOT NULL,
`processed_by` int(11) NOT NULL,
PRIMARY KEY (`order_id`),
KEY `customer_id` (`customer_id`,`processed_by`),
KEY `processed_by` (`processed_by`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblorderdetails – les détails de la commande stockent les commandes client détaillées du client. Le tableau comporte 6 colonnes.

  • order_details_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).
  • order_id – clé étrangère qui renvoie à la table de commande.
  • menu_id – clé étrangère qui renvoie à la table de menu.
  • quantité – quantité de nourriture ou de menu.
  • no_of_serving – fait référence au nombre de commandes.
  • total_amount – le montant total est égal au montant multiplié par le nombre de portions.
lire plus  Système d'enregistrement des utilisateurs utilisant la base de données Php et MySQLi

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

CREATE TABLE IF NOT EXISTS `tblorderdetails` (
`order_details_id` int(11) NOT NULL AUTO_INCREMENT,
`order_id` int(11) NOT NULL,
`menu_id` int(11) NOT NULL,
`amount` float NOT NULL,
`no_of_serving` int(4) NOT NULL,
`total_amount` float NOT NULL,
PRIMARY KEY (`order_details_id`),
KEY `order_id` (`order_id`,`menu_id`),
KEY `menu_id` (`menu_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblpayment – les transactions de paiement sont enregistrées et stockées sur cette table. Ce tableau comporte 6 colonnes.

  • 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).
  • order_id – clé étrangère qui pointe vers la table de commande.
  • montant – montant payé par le client.
  • payé_par – nom de la personne qui a payé les transactions.
  • payment_date – date du paiement.
  • traité_by – il s’agit d’une clé étrangère qui se connecte ou se lie à la table utilisateur. Il fait référence à l’utilisateur qui a traité la transaction.

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,
`order_id` int(11) NOT NULL,
`amount` float NOT NULL,
`paid_by` varchar(50) NOT NULL,
`payment_date` date NOT NULL,
`processed_by` int(11) NOT NULL,
PRIMARY KEY (`payment_id`),
KEY `order_id` (`order_id`,`processed_by`),
KEY `processed_by` (`processed_by`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

tblrating – les notes et commentaires des clients sont stockés dans ce tableau. Il comporte 5 colonnes.

  • rating_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).
  • menu_id – clé étrangère qui renvoie à la table de menu.
  • score – score fourni par le client (échelle de 1 à 5, 1 comme le plus bas et 5 comme le plus élevé)
  • remarques – commentaires, suggestions et recommandations des clients.
  • date_recorded
  • customer_id – clé étrangère qui renvoie aux informations client.
lire plus  Résumé du système de propriété immobilière

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

CREATE TABLE IF NOT EXISTS `tblrating` (
`rating_id` int(11) NOT NULL AUTO_INCREMENT,
`menu_id` int(11) NOT NULL,
`score` int(1) NOT NULL,
`remarks` varchar(100) NOT NULL,
`date_recorded` date NOT NULL,
`customer_id` int(11) NOT NULL,
PRIMARY KEY (`rating_id`),
KEY `menu_id` (`menu_id`),
KEY `customer_id` (`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Conception de la base de données du système de commande d'aliments en ligne - Relation entre les tables
Conception de la base de données du système de commande d’aliments en ligne – Relation entre les tables

tblsiteinfo – les informations du site Web ou de l’entreprise sont stockées dans ce tableau.

  • site_info_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).
  • site_name – nom du site Web.
  • description – description de l’entreprise.
  • contact_info – coordonnées de l’entreprise.
  • adresse – adresse de l’entreprise.
  • last_update – la date à laquelle les informations ont été mises à jour pour la dernière fois.

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

CREATE TABLE IF NOT EXISTS `tblsiteinfo` (
`site_info_id` int(11) NOT NULL AUTO_INCREMENT,
`site_name` varchar(30) NOT NULL,
`description` varchar(100) NOT NULL,
`contact_info` varchar(15) NOT NULL,
`address` varchar(100) NOT NULL,
`last_update` date NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`site_info_id`),
KEY `user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Constraints for dumped tables
--
-- Constraints for table `tblmenu`
--
ALTER TABLE `tblmenu`
ADD CONSTRAINT `tblmenu_ibfk_1` FOREIGN KEY (`menu_type_id`) REFERENCES `tblmenutype` (`menu_type_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tblorder`
--
ALTER TABLE `tblorder`
ADD CONSTRAINT `tblorder_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `tblcustomer` (`customer_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblorder_ibfk_1` FOREIGN KEY (`processed_by`) REFERENCES `tbluser` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tblorderdetails`
--
ALTER TABLE `tblorderdetails`
ADD CONSTRAINT `tblorderdetails_ibfk_2` FOREIGN KEY (`order_id`) REFERENCES `tblorder` (`order_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblorderdetails_ibfk_1` FOREIGN KEY (`menu_id`) REFERENCES `tblmenu` (`menu_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tblpayment`
--
ALTER TABLE `tblpayment`
ADD CONSTRAINT `tblpayment_ibfk_2` FOREIGN KEY (`order_id`) REFERENCES `tblorder` (`order_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblpayment_ibfk_1` FOREIGN KEY (`processed_by`) REFERENCES `tbluser` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tblrating`
--
ALTER TABLE `tblrating`
ADD CONSTRAINT `tblrating_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `tblcustomer` (`customer_id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `tblrating_ibfk_1` FOREIGN KEY (`menu_id`) REFERENCES `tblmenu` (`menu_id`) ON DELETE CASCADE ON UPDATE CASCADE;

--
-- Constraints for table `tblsiteinfo`
--
ALTER TABLE `tblsiteinfo`
ADD CONSTRAINT `tblsiteinfo_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `tbluser` (`user_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