Facebook
From Hasham Ghuffary, 1 Year ago, written in SQL.
Embed
Download Paste or View Raw
Hits: 120
  1. CREATE TABLE Room_Type (
  2.   Room_Type VARCHAR(10),
  3.   Sleeps INT,
  4.   Description VARCHAR(100),
  5.   PRIMARY KEY (Room_Type)
  6. );
  7.  
  8. CREATE TABLE Room (
  9.   Room_Number INT NOT NULL,
  10.   Room_Type VARCHAR(10),
  11.   Shower VARCHAR(10),
  12.   Bath VARCHAR(10),
  13.   Balcony VARCHAR(10),
  14.   PRIMARY KEY (Room_Number),
  15.   CONSTRAINT FK_Room_Room_Type
  16.     FOREIGN KEY (Room_Type)
  17.       REFERENCES Room_Type(Room_Type)
  18. );
  19.  
  20. CREATE TABLE Price_List (
  21.   Room_Number INT NOT NULL,
  22.   Season VARCHAR(12),
  23.   Weekday VARCHAR(15),
  24.   Price INT,
  25.   PRIMARY KEY (Room_Number, Season, Weekday),
  26.   CONSTRAINT FK_Price_List_Room_Number
  27.     FOREIGN KEY (Room_Number)
  28.       REFERENCES Room(Room_Number)
  29. );
  30.  
  31. CREATE TABLE Fixed_Extra (
  32.   Room_Number INT,
  33.   Extra_ID INT,
  34.   PRIMARY KEY (Room_Number, Extra_ID),
  35.   CONSTRAINT FK_Fixed_Extra_Room_Number
  36.     FOREIGN KEY (Room_Number)
  37.       REFERENCES Room(Room_Number)
  38. );
  39.  
  40. CREATE TABLE Extra (
  41.   Extra_ID INT NOT NULL,
  42.   Object_Name VARCHAR(20),
  43.   Object_Description VARCHAR(100),
  44.   Object_Price INT,
  45.   PRIMARY KEY (Extra_ID)
  46. );
  47.  
  48. CREATE TABLE Guest (
  49.   Guest_ID INT,
  50.   Family_Name VARCHAR(50),
  51.   Given_Name VARCHAR(50),
  52.   Date_of_Birth DATE,
  53.   Address VARCHAR(200),
  54.   PRIMARY KEY (Guest_ID)
  55. );
  56.  
  57. CREATE TABLE Booking (
  58.   Booking_Number INT,
  59.   Guest INT,
  60.   Date_Made DATE,
  61.   Reason VARCHAR(50),
  62.   PRIMARY KEY (Booking_Number),
  63.   CONSTRAINT FK_Booking_Guest
  64.     FOREIGN KEY (Guest)
  65.       REFERENCES Guest(Guest_ID)
  66. );
  67.  
  68. CREATE TABLE Reservation (
  69.   Booking_Number INT,
  70.   Room_Number INT,
  71.   Date_Reserved DATE,
  72.   PRIMARY KEY (Booking_Number, Room_Number, Date_Reserved),
  73.   CONSTRAINT FK_Reservation_Room_Number
  74.     FOREIGN KEY (Room_Number)
  75.       REFERENCES Room(Room_Number),
  76.   CONSTRAINT FK_Reservation_Booking_Number
  77.     FOREIGN KEY (Booking_Number)
  78.       REFERENCES Booking(Booking_Number)
  79. );
  80.  
  81. CREATE TABLE additional_extra(
  82. Booking_Number INT, Room_Number
  83. INT, Date_Reserved
  84. DATE, Extra_ID INT, PRIMARY KEY (Booking_Number, Room_Number, Date_Reserved, Extra_ID), FOREIGN KEY (Extra_ID) REFERENCES Extra (Extra_ID))