Advertisement
VickSuna

Untitled

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