[sql] booking

Viewer

  1.  
  2. /* 
  3. SQL for creating the cinema online booking system
  4. */
  5.  
  6. CREATE DATABASE cinema_booking_system;
  7. USE cinema_booking_system; 
  8.  
  9. CREATE TABLE films (
  10.  
  11.         id INT PRIMARY KEY AUTO_INCREMENT,
  12.         name VARCHAR(45) NOT NULL UNIQUE,
  13.         length_min INT NOT NULL
  14. );
  15.  
  16. CREATE TABLE customers (
  17.  
  18.         id INT PRIMARY KEY AUTO_INCREMENT,
  19.         first_name VARCHAR(45),
  20.         last_name VARCHAR(45) NOT NULL,
  21.         email VARCHAR(45) NOT NULL UNIQUE
  22. );
  23.  
  24. CREATE TABLE rooms (
  25.  
  26.         id INT PRIMARY KEY AUTO_INCREMENT,
  27.         name VARCHAR(45) NOT NULL,
  28.         no_seats INT NOT NULL
  29. );
  30.  
  31. CREATE TABLE screenings (
  32.  
  33.         id INT PRIMARY KEY AUTO_INCREMENT,
  34.         film_id INT NOT NULL,
  35.         room_id INT NOT NULL, 
  36.         start_time DATETIME NOT NULL,
  37.         FOREIGN KEY (film_id) REFERENCES films(id),
  38.         FOREIGN KEY (room_id) REFERENCES rooms(id)
  39. );
  40.  
  41. CREATE TABLE seats (
  42.  
  43.         id INT PRIMARY KEY AUTO_INCREMENT, 
  44.         ROW CHAR(1) NOT NULL,
  45.         NUMBER INT NOT NULL,
  46.         room_id INT NOT NULL, 
  47.         FOREIGN KEY (room_id) REFERENCES rooms(id)
  48. );
  49.  
  50. CREATE TABLE bookings (
  51.  
  52.         id INT PRIMARY KEY AUTO_INCREMENT,
  53.         screening_id INT NOT NULL, 
  54.         customer_id INT NOT NULL,
  55.         FOREIGN KEY (screening_id) REFERENCES screenings(id),
  56.         FOREIGN KEY (customer_id) REFERENCES customers(id)
  57. );
  58.  
  59. CREATE TABLE reserved_seat (
  60.  
  61.         id INT PRIMARY KEY AUTO_INCREMENT,
  62.         booking_id INT NOT NULL,
  63.         seat_id INT NOT NULL,
  64.         FOREIGN KEY (booking_id) REFERENCES bookings(id),
  65.         FOREIGN KEY (seat_id) REFERENCES seats(id)
  66. );
  67.  

Editor

You can edit this paste and save as new:


File Description
  • booking
  • Paste Code
  • 20 Jan-2022
  • 1.4 Kb
You can Share it: