CREATE DATABASE Трамвайное_депо;
GO
USE Трамвайное_депо;
GO
CREATE TABLE Депо
(
Номер_депо int IDENTITY(1,1) PRIMARY KEY,
Название nvarchar(100) NOT NULL,
Количество_парковочных_мест int NOT NULL,
Количество_ремонтных_мест int NOT NULL,
Адрес nvarchar(200) NOT NULL,
Контактный_телефон nvarchar(20) NULL
);
GO
CREATE TABLE Пути
(
Номер_депо int NOT NULL,
Номер_пути int NOT NULL,
Название nvarchar(100) NOT NULL,
Длина_пути decimal(6,2) NOT NULL,
Путь_свободен bit NOT NULL,
Путь_электрифицирован bit NOT NULL,
CONSTRAINT PK_Пути PRIMARY KEY (Номер_депо, Номер_пути),
CONSTRAINT FK_Пути_Депо FOREIGN KEY (Номер_депо)
REFERENCES Депо (Номер_депо)
ON UPDATE CASCADE
ON DELETE CASCADE
);
GO
INSERT INTO Депо (Название, Количество_парковочных_мест, Количество_ремонтных_мест, Адрес, Контактный_телефон)
VALUES
('Депо №1 "Октябрьское"', 40, 8, 'г. Москва, ул. Ленина, 10', '+7 495 100-00-01'),
('Депо №2 "Заречное"', 35, 6, 'г. Москва, ул. Мира, 25', '+7 495 100-00-02'),
('Депо №3 "Северное"', 50, 10, 'г. Москва, пр-т Гагарина, 5', '+7 495 100-00-03'),
('Депо №4 "Южное"', 30, 5, 'г. Москва, ул. Садовая, 14', '+7 495 100-00-04'),
('Депо №5 "Центральное"', 60, 12, 'г. Москва, Кремлёвская наб., 1', '+7 495 100-00-05'),
('Депо №6 "Восточное"', 25, 4, 'г. Москва, ул. Восточная, 33', '+7 495 100-00-06'),
('Депо №7 "Западное"', 45, 9, 'г. Москва, ул. Западная, 7', '+7 495 100-00-07'),
('Депо №8 "Промышленное"', 55, 11, 'г. Москва, Заводской пр-д, 2', '+7 495 100-00-08'),
('Депо №9 "Речное"', 38, 7, 'г. Москва, наб. Реки, 19', '+7 495 100-00-09'),
('Депо №10 "Парковое"', 42, 8, 'г. Москва, ул. Парковая, 21', '+7 495 100-00-10');
GO
INSERT INTO Пути (Номер_депо, Номер_пути, Название, Длина_пути, Путь_свободен, Путь_электрифицирован)
VALUES
(1, 1, 'Путь А1', 120.50, 1, 1),
(1, 2, 'Путь А2', 98.00, 0, 1),
(2, 1, 'Путь Б1', 150.75, 1, 1),
(2, 2, 'Путь Б2', 110.20, 1, 0),
(3, 1, 'Путь В1', 200.00, 0, 1),
(3, 2, 'Путь В2', 175.30, 1, 1),
(4, 1, 'Путь Г1', 90.00, 1, 0),
(5, 1, 'Путь Д1', 220.00, 1, 1),
(6, 1, 'Путь Е1', 130.40, 0, 0),
(7, 1, 'Путь Ж1', 160.60, 1, 1);
GO