Загрузка данных
--CREATE TABLE Факультет (
-- Аббревиатура NVARCHAR(10) PRIMARY KEY,
-- Название NVARCHAR(100) NOT NULL
--);
--CREATE TABLE Кафедра (
-- Шифр NVARCHAR(10) PRIMARY KEY,
-- Название NVARCHAR(100) NOT NULL,
-- Факультет NVARCHAR(10),
-- CONSTRAINT fk_кафедра_факультет FOREIGN KEY (Факультет) REFERENCES Факультет(Аббревиатура)
--);
--CREATE TABLE Сотрудник (
-- Таб_номер INT PRIMARY KEY,
-- Шифр NVARCHAR(10),
-- Фамилия NVARCHAR(100) NOT NULL,
-- Должность NVARCHAR(50) NOT NULL,
-- Зарплата DECIMAL(10,2) NOT NULL,
-- Шеф INT,
-- CONSTRAINT fk_сотрудник_кафедра FOREIGN KEY (Шифр) REFERENCES Кафедра(Шифр),
-- CONSTRAINT fk_сотрудник_шеф FOREIGN KEY (Шеф) REFERENCES Сотрудник(Таб_номер)
--);
--CREATE TABLE Специальность (
-- Номер NVARCHAR(20) PRIMARY KEY,
-- Направление NVARCHAR(100) NOT NULL,
-- Шифр NVARCHAR(10),
-- CONSTRAINT fk_специальность_кафедра FOREIGN KEY (Шифр) REFERENCES Кафедра(Шифр)
--);
--CREATE TABLE Дисциплина (
-- Код INT PRIMARY KEY,
-- Объем INT NOT NULL,
-- Название NVARCHAR(100) NOT NULL,
-- Исполнитель NVARCHAR(10),
-- CONSTRAINT fk_дисциплина_кафедра FOREIGN KEY (Исполнитель) REFERENCES Кафедра(Шифр)
--);
--CREATE TABLE Заявка (
-- Код INT,
-- Номер NVARCHAR(100) NOT NULL
--);
--CREATE TABLE Зав_кафедрой (
-- Таб_номер INT PRIMARY KEY,
-- Стаж INT NOT NULL,
-- CONSTRAINT fk_зав_кафедрой_сотрудник FOREIGN KEY (Таб_номер) REFERENCES Сотрудник(Таб_номер)
--);
--CREATE TABLE Инженер (
-- Таб_номер INT PRIMARY KEY,
-- Специальность NVARCHAR(50),
-- CONSTRAINT fk_инженер_сотрудник FOREIGN KEY (Таб_номер) REFERENCES Сотрудник(Таб_номер)
--);
--CREATE TABLE Преподаватель (
-- Таб_номер INT PRIMARY KEY,
-- Звание NVARCHAR(50),
-- Степень NVARCHAR(50),
-- CONSTRAINT fk_преподаватель_сотрудник FOREIGN KEY (Таб_номер) REFERENCES Сотрудник(Таб_номер)
--);
--CREATE TABLE Студент (
-- Рег_номер INT PRIMARY KEY,
-- Номер NVARCHAR(20),
-- Фамилия NVARCHAR(100),
-- CONSTRAINT fk_студент_специальность FOREIGN KEY (Номер) REFERENCES Специальность(Номер)
--);
--CREATE TABLE Экзамен (
-- Дата DATE NOT NULL,
-- Код INT NOT NULL,
-- Рег_номер INT NOT NULL,
-- Таб_номер INT NOT NULL,
-- Аудитория NVARCHAR(20),
-- Оценка TINYINT NOT NULL,
-- PRIMARY KEY (Дата, Код, Рег_номер, Таб_номер),
-- CONSTRAINT chk_экзамен_оценка CHECK (Оценка BETWEEN 2 AND 5),
-- CONSTRAINT fk_экзамен_дисциплина FOREIGN KEY (Код) REFERENCES Дисциплина(Код),
-- CONSTRAINT fk_экзамен_студент FOREIGN KEY (Рег_номер) REFERENCES Студент(Рег_номер),
-- CONSTRAINT fk_экзамен_сотрудник FOREIGN KEY (Таб_номер) REFERENCES Сотрудник(Таб_номер)
--);
--INSERT INTO Факультет (Аббревиатура, Название) VALUES
-- (N'Ен', N'Естественные науки'),
-- (N'Гн', N'Гуманитарные науки'),
-- (N'Ит', N'Информационные технологии'),
-- (N'Фм', N'Физико-математический');
--INSERT INTO Кафедра (Шифр, Название, Факультет) VALUES
-- (N'вм', N'Высшая математика', N'Ен'),
-- (N'ис', N'Информационные системы', N'Ит'),
-- (N'мм', N'Математическое моделирование', N'Фм'),
-- (N'оф', N'Общая физика', N'Ен'),
-- (N'пи', N'Прикладная информатика', N'Ит'),
-- (N'эф', N'Экспериментальная физика', N'Фм');
--INSERT INTO Сотрудник (Таб_номер, Шифр, Фамилия, Должность, Зарплата, Шеф) VALUES
-- (101, N'пи', N'Прохоров П.П.', N'зав. кафедрой', 35000.00, 101),
-- (102, N'пи', N'Семенов С.С.', N'преподаватель', 25000.00, 101),
-- (105, N'пи', N'Петров П.П.', N'преподаватель', 25000.00, 101),
-- (153, N'пи', N'Сидорова С.С.', N'инженер', 15000.00, 102),
-- (201, N'ис', N'Андреев А.А.', N'зав. кафедрой', 35000.00, 201),
-- (202, N'ис', N'Борисов Б.Б.', N'преподаватель', 25000.00, 201),
-- (241, N'ис', N'Глухов Г.Г.', N'инженер', 20000.00, 201),
-- (242, N'ис', N'Чернов Ч.Ч.', N'инженер', 15000.00, 202),
-- (301, N'мм', N'Басов Б.Б.', N'зав. кафедрой', 35000.00, 301),
-- (302, N'мм', N'Сергеева С.С.', N'преподаватель', 25000.00, 301),
-- (401, N'оф', N'Волков В.В.', N'зав. кафедрой', 35000.00, 401),
-- (402, N'оф', N'Зайцев З.З.', N'преподаватель', 25000.00, 401),
-- (403, N'оф', N'Смирнов С.С.', N'преподаватель', 15000.00, 401),
-- (435, N'оф', N'Лисин Л.Л.', N'инженер', 20000.00, 402),
-- (501, N'вм', N'Кузнецов К.К.', N'зав. кафедрой', 35000.00, 501),
-- (502, N'вм', N'Романцев Р.Р.', N'преподаватель', 25000.00, 501),
-- (503, N'вм', N'Соловьев С.С.', N'преподаватель', 25000.00, 501),
-- (601, N'эф', N'Зверев З.З.', N'зав. кафедрой', 35000.00, 601),
-- (602, N'эф', N'Сорокина С.С.', N'преподаватель', 25000.00, 601),
-- (614, N'эф', N'Григорьев Г.Г.', N'инженер', 20000.00, 602);
--INSERT INTO Специальность (Номер, Направление, Шифр) VALUES
-- (N'01.03.04', N'Прикладная математика', N'мм'),
-- (N'09.03.02', N'Информационные системы и технологии', N'ис'),
-- (N'09.03.03', N'Прикладная информатика', N'пи'),
-- (N'14.03.02', N'Ядерные физика и технологии', N'эф'),
-- (N'38.03.05', N'Бизнес-информатика', N'ис');
--INSERT INTO Дисциплина (Код, Объем, Название, Исполнитель) VALUES
-- (101, 320, N'Математика', N'вм'),
-- (102, 160, N'Информатика', N'пи'),
-- (103, 160, N'Физика', N'оф'),
-- (202, 120, N'Базы данных', N'ис'),
-- (204, 160, N'Электроника', N'эф'),
-- (205, 80, N'Программирование', N'пи'),
-- (209, 80, N'Моделирование', N'мм');
--INSERT INTO Заявка (Код, Номер) VALUES
-- (101, N'01.03.04'),
-- (205, N'01.03.04'),
-- (209, N'01.03.04'),
-- (101, N'09.03.02'),
-- (102, N'09.03.02'),
-- (103, N'09.03.02'),
-- (202, N'09.03.02'),
-- (205, N'09.03.02'),
-- (209, N'09.03.02'),
-- (101, N'09.03.03'),
-- (102, N'09.03.03'),
-- (103, N'09.03.03'),
-- (202, N'09.03.03'),
-- (205, N'09.03.03'),
-- (101, N'14.03.02'),
-- (102, N'14.03.02'),
-- (103, N'14.03.02'),
-- (204, N'14.03.02'),
-- (101, N'38.03.05'),
-- (103, N'38.03.05'),
-- (202, N'38.03.05'),
-- (209, N'38.03.05');
--INSERT INTO Зав_кафедрой (Таб_номер, Стаж) VALUES
-- (101, 15),
-- (201, 18),
-- (301, 20),
-- (401, 10),
-- (501, 18),
-- (601, 8);
--INSERT INTO Инженер (Таб_номер, Специальность) VALUES
-- (153, N'электроник'),
-- (241, N'электроник'),
-- (242, N'программист'),
-- (435, N'электроник'),
-- (614, N'программист');
--INSERT INTO Преподаватель (Таб_номер, Звание, Степень) VALUES
-- (101, N'профессор', N'д. т.н.'),
-- (102, N'доцент', N'к. ф.-м. н.'),
-- (105, N'доцент', N'к. т.н.'),
-- (201, N'профессор', N'д. ф.-м. н.'),
-- (202, N'доцент', N'к. ф.-м. н.'),
-- (301, N'профессор', N'д. т.н.'),
-- (302, N'доцент', N'к. т.н.'),
-- (401, N'профессор', N'д. т.н.'),
-- (402, N'доцент', N'к. т.н.'),
-- (403, N'ассистент', NULL),
-- (501, N'профессор', N'д. ф.-м. н.'),
-- (502, N'профессор', N'д. ф.-м. н.'),
-- (503, N'доцент', N'к. ф.-м. н.'),
-- (601, N'профессор', N'д. ф.-м. н.');
--INSERT INTO Студент (Рег_номер, Номер, Фамилия) VALUES
-- (10101, N'09.03.03', N'Николаева Н. Н.'),
-- (10102, N'09.03.03', N'Иванов И. И.'),
-- (10103, N'09.03.03', N'Крюков К. К.'),
-- (20101, N'09.03.02', N'Андреев А. А.'),
-- (20102, N'09.03.02', N'Федоров Ф. Ф.'),
-- (30101, N'14.03.02', N'Бондаренко Б. Б.'),
-- (30102, N'14.03.02', N'Цветков К. К.'),
-- (30103, N'14.03.02', N'Петров П. П.'),
-- (50101, N'01.03.04', N'Сергеев С. С.'),
-- (50102, N'01.03.04', N'Кудрявцев К. К.'),
-- (80101, N'38.03.05', N'Макаров М. М.'),
-- (80102, N'38.03.05', N'Яковлев Я. Я.');
--INSERT INTO Экзамен (Дата, Код, Рег_номер, Таб_номер, Аудитория, Оценка) VALUES
-- ('2015-06-05', 102, 10101, 102, N'т505', 4),
-- ('2015-06-05', 102, 10102, 102, N'т505', 4),
-- ('2015-06-05', 202, 20101, 202, N'т506', 4),
-- ('2015-06-05', 202, 20102, 202, N'т506', 3),
-- ('2015-06-07', 102, 30101, 105, N'ф419', 3),
-- ('2015-06-07', 102, 30102, 101, N'т506', 4),
-- ('2015-06-07', 102, 80101, 102, N'м425', 5),
-- ('2015-06-09', 205, 80102, 402, N'м424', 4),
-- ('2015-06-09', 209, 20101, 302, N'ф333', 3),
-- ('2015-06-10', 101, 10101, 501, N'т506', 4),
-- ('2015-06-10', 101, 10102, 501, N'т506', 4),
-- ('2015-06-10', 204, 30102, 601, N'ф349', 5),
-- ('2015-06-10', 209, 80101, 301, N'э105', 5),
-- ('2015-06-10', 209, 80102, 301, N'э105', 4),
-- ('2015-06-12', 101, 80101, 502, N'с324', 4),
-- ('2015-06-15', 101, 30101, 503, N'ф417', 4),
-- ('2015-06-15', 101, 50101, 501, N'ф201', 5),
-- ('2015-06-15', 101, 50102, 501, N'ф201', 3),
-- ('2015-06-15', 103, 10101, 403, N'ф414', 4),
-- ('2015-06-17', 102, 10101, 102, N'т505', 5);
--SELECT dbo.Кафедра.название, dbo.специальность.направление, dbo.студенты.фамилия, dbo.Кафедра.факультет
--FROM
--dbo.Кафедра
--INNER JOIN dbo.специальность ON dbo.кафедра.шифр = dbo.специальность.шифр
--INNER JOIN dbo.студенты ON dbo.специальность.номер = dbo.студенты.номер
--WHERE
--(dbo.Кафедра.факультет = N'ит')
--ORDER BY
--dbo.студенты.фамилия
--SELECT dbo.Кафедра.Название, dbo.Сотрудник.Фамилия, dbo.Специальность.Шифр
--FROM dbo.Специальность INNER JOIN
-- dbo.Кафедра ON dbo.Специальность.Шифр = dbo.Кафедра.Шифр INNER JOIN
-- dbo.Сотрудник ON dbo.Кафедра.Шифр = dbo.Сотрудник.Шифр
--WHERE (dbo.Сотрудник.Должность = N'зав. кафедрой')