Advertisement
rajaasim

mysql tables

Mar 23rd, 2024 (edited)
16
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 1.56 KB | None | 0 0
  1. CREATE TABLE customers (
  2.     customer_id INT AUTO_INCREMENT PRIMARY KEY,
  3.     firebase_id VARCHAR(255),
  4.     customer_name VARCHAR(50) UNIQUE NOT NULL,
  5.     fcm_token VARCHAR(255),
  6.     default_phone VARCHAR(20),
  7.     default_address VARCHAR(255),
  8.     last_order_date DATE
  9. );
  10.  
  11. CREATE TABLE dish_categories (
  12.     category_id INT AUTO_INCREMENT PRIMARY KEY,
  13.     category_name VARCHAR(50) UNIQUE NOT NULL,
  14.     category_image_url VARCHAR(255)
  15. );
  16.  
  17. CREATE TABLE dishes (
  18.     dish_id INT AUTO_INCREMENT PRIMARY KEY,
  19.     dish_name VARCHAR(100) UNIQUE NOT NULL,
  20.     category_id INT,
  21.     price_half DECIMAL(10, 2) DEFAULT 0,
  22.     price_full DECIMAL(10, 2) DEFAULT 0,
  23.     discount DECIMAL(5, 2) DEFAULT 0,
  24.     dish_image_url VARCHAR(255),
  25.     FOREIGN KEY (category_id) REFERENCES dish_categories(category_id)
  26. );
  27.  
  28. CREATE TABLE orders (
  29.     order_id INT AUTO_INCREMENT PRIMARY KEY,
  30.     customer_id INT,
  31.     customer_name VARCHAR(100),
  32.     customer_phone VARCHAR(20),
  33.     whatsapp_enabled BOOLEAN DEFAULT FALSE,
  34.     delivery_address VARCHAR(255),
  35.     order_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  36.     total_amount DECIMAL(10, 2),
  37.     status ENUM('pending', 'processing', 'completed', 'cancelled') DEFAULT 'pending',
  38.     FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
  39. );
  40.  
  41. CREATE TABLE order_dishes (
  42.     order_id INT,
  43.     dish_id INT,
  44.     quantity INT,
  45.     portion_size ENUM('half', 'full') DEFAULT 'full',
  46.     PRIMARY KEY (order_id, dish_id),
  47.     FOREIGN KEY (order_id) REFERENCES orders(order_id),
  48.     FOREIGN KEY (dish_id) REFERENCES dishes(dish_id)
  49. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement