-- ============================================
-- 1. Справочник: Специальность
-- ============================================
CREATE TABLE Специальность (
id_специальности INT PRIMARY KEY IDENTITY(1,1),
название NVARCHAR(100) NOT NULL
);
-- ============================================
-- 2. Справочник: Категория (врача)
-- ============================================
CREATE TABLE Категория (
id_категории INT PRIMARY KEY IDENTITY(1,1),
название NVARCHAR(100) NOT NULL
);
-- ============================================
-- 3. Справочник: Кабинет
-- ============================================
CREATE TABLE Кабинет (
id_кабинета INT PRIMARY KEY IDENTITY(1,1),
номер_кабинета NVARCHAR(20) NOT NULL,
этаж INT
);
-- ============================================
-- 4. Справочник: Участок
-- ============================================
CREATE TABLE Участок (
id_участка INT PRIMARY KEY IDENTITY(1,1),
номер_участка NVARCHAR(20) NOT NULL,
описание NVARCHAR(255)
);
-- ============================================
-- 5. Справочник: День недели
-- ============================================
CREATE TABLE День_недели (
id_дня INT PRIMARY KEY IDENTITY(1,1),
название NVARCHAR(20) NOT NULL
);
-- ============================================
-- 6. Основная таблица: Врач
-- ============================================
CREATE TABLE Врач (
id_врача INT PRIMARY KEY IDENTITY(1,1),
Фамилия NVARCHAR(50) NOT NULL,
Имя NVARCHAR(50) NOT NULL,
Отчество NVARCHAR(50),
Домашний_телефон NVARCHAR(20),
Дата_приема_на_работу DATE,
-- Внешние ключи
Код_специальности INT,
Код_категории INT,
Код_кабинета INT,
Код_участка INT,
-- Ограничения внешних ключей
CONSTRAINT FK_Врач_Специальность
FOREIGN KEY (Код_специальности) REFERENCES Специальность(id_специальности),
CONSTRAINT FK_Врач_Категория
FOREIGN KEY (Код_категории) REFERENCES Категория(id_категории),
CONSTRAINT FK_Врач_Кабинет
FOREIGN KEY (Код_кабинета) REFERENCES Кабинет(id_кабинета),
CONSTRAINT FK_Врач_Участок
FOREIGN KEY (Код_участка) REFERENCES Участок(id_участка)
);
-- ============================================
-- 7. Основная таблица: Расписание приема
-- ============================================
CREATE TABLE Расписание_приема (
id_записи INT PRIMARY KEY IDENTITY(1,1),
-- Внешние ключи
Код_врача INT NOT NULL,
Код_дня INT NOT NULL,
Время_начала TIME NOT NULL,
Время_окончания TIME NOT NULL,
-- Ограничения внешних ключей
CONSTRAINT FK_Расписание_Врач
FOREIGN KEY (Код_врача) REFERENCES Врач(id_врача),
CONSTRAINT FK_Расписание_День
FOREIGN KEY (Код_дня) REFERENCES День_недели(id_дня)
);