petarkobakov

MSSQL. EXAM 21 JUN 2020. DDL

Feb 12th, 2021 (edited)
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. CREATE TABLE Cities
  2. (
  3. Id INT PRIMARY KEY IDENTITY,
  4. [Name] NVARCHAR (20) NOT NULL,
  5. CountryCode CHAR (2) NOT NULL
  6. )
  7.  
  8. CREATE TABLE Hotels
  9. (
  10. Id INT PRIMARY KEY IDENTITY,
  11. [Name] NVARCHAR (30) NOT NULL,
  12. CityId INT FOREIGN KEY REFERENCES Cities(Id) NOT NULL,
  13. EmployeeCount INT NOT NULL,
  14. BaseRate DECIMAL (6,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 Book_ArrivalDate CHECK (BookDate<ArrivalDate),
  35. CONSTRAINT Arrival_ReturnDate CHECK (ArrivalDate < ReturnDate)
  36. )
  37.  
  38. CREATE TABLE Accounts
  39. (
  40. Id INT PRIMARY KEY IDENTITY NOT NULL,
  41. FirstName NVARCHAR (50) NOT NULL,
  42. MiddleName NVARCHAR (20),
  43. LastName NVARCHAR (50) NOT NULL,
  44. CityId INT FOREIGN KEY REFERENCES Cities(Id) NOT NULL,
  45. BirthDate DATE NOT NULL,
  46. Email VARCHAR (100) UNIQUE NOT NULL
  47.  
  48. )
  49. CREATE TABLE AccountsTrips
  50. (
  51. AccountId INT FOREIGN KEY REFERENCES Accounts(Id),
  52. TripId INT FOREIGN KEY REFERENCES Trips(Id) NOT NULL,
  53. Luggage INT CHECK (Luggage >= 0)NOT NULL,
  54. PRIMARY KEY (TripId, AccountId)
  55. )
  56.  
Add Comment
Please, Sign In to add comment