Advertisement
DannyDonkov

Untitled

Feb 12th, 2021
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. CREATE TABLE Cities
  2. (
  3. Id INT NOT NULL PRIMARY KEY IDENTITY,
  4. Name NVARCHAR(20) NOT NULL,
  5. CountryCode NVARCHAR(2) NOT NULL
  6. )
  7.  
  8. CREATE TABLE Accounts
  9. (
  10. Id INT NOT NULL PRIMARY KEY IDENTITY,
  11. FirstName VARCHAR(50) NOT NULL,
  12. MiddleName VARCHAR(20),
  13. LastName VARCHAR(50) NOT NULL,
  14. CityId INT NOT NULL REFERENCES Cities(Id),
  15. BirthDate DATE NOT NULL,
  16. Email VARCHAR(100) NOT NULL UNIQUE,
  17. )
  18.  
  19. CREATE TABLE Hotels
  20. (
  21. Id INT NOT NULL PRIMARY KEY IDENTITY,
  22. Name NVARCHAR(30) NOT NULL,
  23. CityId INT NOT NULL REFERENCES Cities(Id),
  24. EmployeeCount INT NOT NULL,
  25. BaseRate DECIMAL(18,2)
  26. )
  27.  
  28. CREATE TABLE Rooms
  29. (
  30. Id INT NOT NULL PRIMARY KEY IDENTITY,
  31. Price DECIMAL(18,2) NOT NULL,
  32. Type NVARCHAR(20) NOT NULL,
  33. Beds INT NOT NULL,
  34. HotelId INT NOT NULL REFERENCES Hotels(Id)
  35. )
  36.  
  37. CREATE TABLE Trips
  38. (
  39. Id INT NOT NULL PRIMARY KEY IDENTITY,
  40. RoomId INT NOT NULL REFERENCES Rooms(Id),
  41. BookDate DATE,
  42. ArrivalDate DATE ,
  43. ReturnDate DATE NOT NULL,
  44. CancelDate DATE,
  45. CHECK(BookDate < ArrivalDate),
  46. CHECK(ArrivalDate < ReturnDate)
  47. )
  48.  
  49. CREATE TABLE AccountsTrips
  50. (
  51. AccountId INT NOT NULL REFERENCES Accounts(Id),
  52. TripId INT NOT NULL REFERENCES Trips(Id),
  53. Luggage INT NOT NULL,
  54. PRIMARY KEY (AccountId, TripId),
  55. CHECK(Luggage >= 0)
  56. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement