Junior — Middle
Design a database schema for a cinema management system, considering information about halls, sessions, and seating.
sobes.tech AI
Answer from AI
For a cinema management system with halls, screenings, and seating, the following database schema can be proposed:
-- Halls table
CREATE TABLE Halls (
HallID INT PRIMARY KEY,
Name VARCHAR(100),
TotalSeats INT
);
-- Seats table
CREATE TABLE Seats (
SeatID INT PRIMARY KEY,
HallID INT,
RowNumber INT,
SeatNumber INT,
FOREIGN KEY (HallID) REFERENCES Halls(HallID)
);
-- Movies table
CREATE TABLE Movies (
MovieID INT PRIMARY KEY,
Title VARCHAR(255),
DurationMinutes INT
);
-- Sessions table
CREATE TABLE Sessions (
SessionID INT PRIMARY KEY,
HallID INT,
MovieID INT,
StartTime DATETIME,
FOREIGN KEY (HallID) REFERENCES Halls(HallID),
FOREIGN KEY (MovieID) REFERENCES Movies(MovieID)
);
-- Bookings table
CREATE TABLE Bookings (
BookingID INT PRIMARY KEY,
SessionID INT,
SeatID INT,
CustomerName VARCHAR(255),
BookingTime DATETIME,
FOREIGN KEY (SessionID) REFERENCES Sessions(SessionID),
FOREIGN KEY (SeatID) REFERENCES Seats(SeatID)
);
Description:
- Halls — information about halls.
- Seats — seats linked to halls, indicating row and seat number.
- Movies — movies being shown.
- Sessions — specific movie screenings in a hall at a certain time.
- Bookings — seat reservations for specific sessions.
This design allows flexible management of halls, sessions, and seats, as well as tracking reservations.