DROP TABLE IF EXISTS `Справка+`;
CREATE TABLE `Справка+`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Слк` CHAR (4) NOT NULL
, `Код` CHAR (3) NOT NULL
, `Название` VARCHAR (50) NOT NULL
, UNIQUE KEY (`Слк`, `Код`));
INSERT INTO `Справка+` VALUES
(NULL, "ДОЛ", "д1", "профессор"),
(NULL, "ДОЛ", "д2", "доцент "),
(NULL, "ВИДв", "в1", "пр-ые"),
(NULL, "ВИДв", "в2.", "практические"),
(NULL, "ДИС", "ди1", "енд"),
(NULL, "ДИС", "ди2", "отд");
INSERT INTO `Справка+` SELECT
NULL, "ДОЛ", "д3", "ассистент" FROM `Справка+` WHERE `Слк`="ДОЛ" AND `Код`="д1";
SELECT "`Справка+` Table Content:" FROM `Справка+` WHERE 1=0;
SELECT * FROM `Справка+`;
DROP TABLE IF EXISTS `Индивидуальная программа`;
CREATE TABLE `Индивидуальная программа`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Регномер` CHAR (10) NOT NULL
, UNIQUE KEY (`Регномер`)
);
INSERT INTO `Индивидуальная программа` VALUES
(NULL, "1111111111"),
(NULL, "1111111112");
SELECT "`Индивидуальная программа` Table Content:" FROM `Индивидуальная программа` WHERE 1=0;
SELECT * FROM `Индивидуальная программа`;
DROP TABLE IF EXISTS `Экзаменуемый%ПЕРС`;
CREATE TABLE `Экзаменуемый%ПЕРС`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Код` CHAR (10) NOT NULL UNIQUE
, `Ид\ИНДп` INT NOT NULL
, `Паспорт` CHAR (10) NOT NULL UNIQUE
, `ФИО` VARCHAR (50) NOT NULL
, FOREIGN KEY (`Ид\ИНДп`) REFERENCES `Индивидуальная программа` (`Ид`)
);
INSERT INTO `Экзаменуемый%ПЕРС` SET `Ид` = NULL, `Код` = "001-П", `Ид\ИНДп` = (SELECT `Ид` FROM `Индивидуальная программа` WHERE `Регномер` = "1111111111"), `Паспорт` = "345678", `ФИО` = "Петров А. А.";
INSERT INTO `Экзаменуемый%ПЕРС` SET `Ид` = NULL, `Код` = "002-П", `Ид\ИНДп` = (SELECT `Ид` FROM `Индивидуальная программа` WHERE `Регномер` = "1111111111"), `Паспорт` = "345677", `ФИО` = "Сидоров А. А.";
INSERT INTO `Экзаменуемый%ПЕРС` SET `Ид` = NULL, `Код` = "088-П", `Ид\ИНДп` = (SELECT `Ид` FROM `Индивидуальная программа` WHERE `Регномер` = "1111111112"), `Паспорт` = "345679", `ФИО` = "Иванов И. А.";
INSERT INTO `Экзаменуемый%ПЕРС` SET `Ид` = NULL, `Код` = "099-П", `Ид\ИНДп` = (SELECT `Ид` FROM `Индивидуальная программа` WHERE `Регномер` = "1111111111"), `Паспорт` = "345688", `ФИО` = "Смирнов А. Д.";
SELECT "Table `Экзаменуемый%ПЕРС`" FROM `Экзаменуемый%ПЕРС` WHERE 1=0;
SELECT * FROM `Экзаменуемый%ПЕРС`;
DROP TABLE IF EXISTS `Вуз`;
CREATE TABLE `Вуз`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Код` CHAR (10) NOT NULL
, `Название` VARCHAR (50) NOT NULL
);
INSERT INTO `Вуз` VALUES
(NULL,"153", "УГНТУ"),
(NULL, "154", "УГАТУ");
SELECT "`Вуз` Table Content:" FROM `Вуз` WHERE 1=0;
SELECT * FROM `Вуз`;
DROP TABLE IF EXISTS `Чужой:ЭКЗ`;
CREATE TABLE `Чужой:ЭКЗ`
(`Ид\ЭКЗ` INT NOT NULL
, `Ид\ВУЗ` INT NOT NULL
, PRIMARY KEY (`Ид\ЭКЗ`)
, FOREIGN KEY (`Ид\ЭКЗ`) REFERENCES `Экзаменуемый%ПЕРС` (`Ид`)
, FOREIGN KEY (`Ид\ВУЗ`) REFERENCES `Вуз` (`Ид`)
);
INSERT INTO `Чужой:ЭКЗ` SET `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "088-П"), `Ид\ВУЗ` = (SELECT `Ид` FROM `Вуз` WHERE `Код` = "154");
INSERT INTO `Чужой:ЭКЗ` SET `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "002-П"), `Ид\ВУЗ` = (SELECT `Ид` FROM `Вуз` WHERE `Код` = "153");
SELECT "`Чужой:ЭКЗ` Table Content:" FROM `Чужой:ЭКЗ` WHERE 1=0;
DROP TABLE IF EXISTS `Факультет`;
CREATE TABLE `Факультет`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Код` CHAR (10) NOT NULL
, `Название` VARCHAR (50) NOT NULL
);
INSERT INTO `Факультет` VALUES
(NULL, "12", "ФИРТ"),
(NULL, "22", "ФАДЕТ");
SELECT "`Факультет` Table Content:" FROM `Факультет` WHERE 1=0;
SELECT * FROM `Факультет`;
DROP TABLE IF EXISTS `Кафедра\ФАК`;
CREATE TABLE `Кафедра\ФАК`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
,`Ид\ФАК` INT NOT NULL
, `Код` CHAR (10) NOT NULL
, `Название` VARCHAR (50) NOT NULL
, UNIQUE KEY (`Ид\ФАК`, `Код`)
, FOREIGN KEY (`Ид\ФАК`) REFERENCES `Факультет` (`Ид`)
);
INSERT INTO `Кафедра\ФАК` SET `Ид` = NULL, `Ид\ФАК` = (SELECT `Ид` FROM `Факультет` WHERE `Код` = "12"), `Код` = "к1", `Название` = "АД";
INSERT INTO `Кафедра\ФАК` SET `Ид` = NULL, `Ид\ФАК` = (SELECT `Ид` FROM `Факультет` WHERE `Код` = "22"), `Код` = "к2", `Название` = "ВМиК";
SELECT "`Кафедра\ФАК` Table Content:" FROM `Кафедра\ФАК` WHERE 1=0;
SELECT * FROM `Кафедра\ФАК`;
DROP TABLE IF EXISTS `Свой:ЭКЗ`;
CREATE TABLE `Свой:ЭКЗ`
( `Ид\ЭКЗ` INT NOT NULL
, `Ид\КАФ` INT NOT NULL
, PRIMARY KEY (`Ид\ЭКЗ`)
, FOREIGN KEY (`Ид\ЭКЗ`) REFERENCES `Экзаменуемый%ПЕРС` (`Ид`)
, FOREIGN KEY (`Ид\КАФ`) REFERENCES `Кафедра\ФАК` (`Ид`)
);
INSERT INTO `Свой:ЭКЗ` SET `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "001-П"), `Ид\КАФ` = (SELECT `Ид` FROM `Кафедра\ФАК` WHERE `Ид\ФАК`="1" AND `Код`="к1");
INSERT INTO `Свой:ЭКЗ` SET `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "099-П"), `Ид\КАФ` = (SELECT `Ид` FROM `Кафедра\ФАК` WHERE `Ид\ФАК`="2" AND `Код`="к2");
SELECT "`Свой:ЭКЗ` Table Content:" FROM `Свой:ЭКЗ` WHERE 1=0;
SELECT * FROM `Свой:ЭКЗ`;
DROP TABLE IF EXISTS `Сотрудник%ПЕРС`;
CREATE TABLE `Сотрудник%ПЕРС`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
,`Код` CHAR (10) NOT NULL UNIQUE KEY
, `Паспорт` CHAR (10) NOT NULL UNIQUE KEY
, `ФИО` VARCHAR (50) NOT NULL
);
INSERT INTO `Сотрудник%ПЕРС` VALUES
(NULL, "001-C", "561230", "Маркечко Д.В"),
(NULL, "002-C", "126084", "Иванов П.М"),
(NULL, "003-C", "526084", "Игнатьева Е.С");
SELECT "`Сотрудник%ПЕРС` Table Content:" FROM `Сотрудник%ПЕРС` WHERE 1=0;
SELECT * FROM `Сотрудник%ПЕРС`;
DROP TABLE IF EXISTS `Секретарь:СОТ`;
CREATE TABLE `Секретарь:СОТ`
(`Ид\СОТ` INT NOT NULL
, PRIMARY KEY (`Ид\СОТ`)
, FOREIGN KEY (`Ид\СОТ`) REFERENCES `Сотрудник%ПЕРС` (`Ид`)
);
INSERT INTO `Секретарь:СОТ` SET `Ид\СОТ` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-C");
SELECT "`Секретарь:СОТ` Table Content:" FROM `Секретарь:СОТ` WHERE 1=0;
SELECT * FROM `Секретарь:СОТ`;
DROP TABLE IF EXISTS `Преподаватель:СОТ`;
CREATE TABLE `Преподаватель:СОТ`
(`Ид\СОТ` INT NOT NULL
, `Ид\КАФ` INT NOT NULL
, `Ид_ДОЛ\СПР` INT NOT NULL
, FOREIGN KEY (`Ид_ДОЛ\СПР`) REFERENCES `Справка+` (`Ид`)
, PRIMARY KEY (`Ид\СОТ`)
, FOREIGN KEY (`Ид\СОТ`) REFERENCES `Сотрудник%ПЕРС` (`Ид`)
, FOREIGN KEY (`Ид\КАФ`) REFERENCES `Кафедра\ФАК` (`Ид`)
);
INSERT INTO `Преподаватель:СОТ` SET `Ид\СОТ` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "002-C"), `Ид\КАФ` = (SELECT `Ид` FROM `Кафедра\ФАК` WHERE `Ид\ФАК`="1" AND `Код`="к1"),`Ид_ДОЛ\СПР` = (SELECT `Ид` FROM `Справка+` WHERE `СЛК`="ДОЛ" AND `Код`="д2");
SELECT "`Преподаватель:СОТ` Table Content:" FROM `Преподаватель:СОТ` WHERE 1=0;
SELECT * FROM `Преподаватель:СОТ`;
DROP TABLE IF EXISTS `Руководитель:СОТ`;
CREATE TABLE `Руководитель:СОТ`
(`Ид\СОТ` INT NOT NULL
, `Ид_ДОЛ\СПР` INT NOT NULL
, FOREIGN KEY (`Ид_ДОЛ\СПР`) REFERENCES `Справка+` (`Ид`)
, PRIMARY KEY (`Ид\СОТ`)
, FOREIGN KEY (`Ид\СОТ`) REFERENCES `Сотрудник%ПЕРС` (`Ид`)
);
INSERT INTO `Руководитель:СОТ` SET `Ид\СОТ` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "003-C"),`Ид_ДОЛ\СПР` = (SELECT `Ид` FROM `Справка+` WHERE `СЛК`="ДОЛ" AND `Код`="д1");
SELECT "`Руководитель:СОТ` Table Content:" FROM `Руководитель:СОТ` WHERE 1=0;
SELECT * FROM `Руководитель:СОТ`;
DROP TABLE IF EXISTS `Приказ`;
CREATE TABLE `Приказ`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
,`Регномер` CHAR (10) NOT NULL UNIQUE KEY
, `Дата` DATE NOT NULL
, `Ид\РУК` INT NOT NULL
, FOREIGN KEY (`Ид\РУК`) REFERENCES `Руководитель:СОТ` (`Ид\СОТ`)
);
INSERT INTO `Приказ` SET `Ид` = NULL, `Регномер` = "7777", `Дата` = "2023.10.10", `Ид\РУК` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "003-C");
SELECT "`Приказ` Table Content:" FROM `Приказ` WHERE 1=0;
SELECT * FROM `Приказ`;
DROP TABLE IF EXISTS `Комиссия`;
CREATE TABLE `Комиссия`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Учебгод` CHAR (4) NOT NULL
, `Регномер комиссии` CHAR (10) NOT NULL UNIQUE KEY
, `Ид\ПРИ` INT NOT NULL
, `Ид_ДИС\СПР` INT NOT NULL
, FOREIGN KEY (`Ид_ДИС\СПР`) REFERENCES `Справка+` (`Ид`)
, FOREIGN KEY (`Ид\ПРИ`) REFERENCES `Приказ` (`Ид`)
);
INSERT INTO `Комиссия` SET `Ид` = NULL, `Учебгод` = "2023", `Регномер комиссии` = "88888", `Ид\ПРИ` = (SELECT `Ид` FROM `Приказ` WHERE `Регномер` = "7777"),`Ид_ДИС\СПР` = (SELECT `Ид` FROM `Справка+` WHERE `СЛК`="ДИС" AND `Код`="ди1");
SELECT "`Комиссия` Table Content:" FROM `Комиссия` WHERE 1=0;
SELECT * FROM `Комиссия`;
DROP TABLE IF EXISTS `Состав:КОМ*ПРЕ`;
CREATE TABLE `Состав:КОМ*ПРЕ`
(`Нпп` CHAR (2) NOT NULL
, `Роль` CHAR (10) NOT NULL
, `Ид\КОМ` INT NOT NULL
, `Ид\ПРЕ` INT NOT NULL
, PRIMARY KEY (`Ид\КОМ`, `Ид\ПРЕ`)
, FOREIGN KEY (`Ид\КОМ`) REFERENCES `Комиссия` (`Ид`)
, FOREIGN KEY (`Ид\ПРЕ`) REFERENCES `Преподаватель:СОТ` (`Ид\СОТ`)
);
INSERT INTO `Состав:КОМ*ПРЕ` SET `Нпп` = "1" , `Роль` = "Член", `Ид\КОМ` = (SELECT `Ид` FROM `Комиссия` WHERE `Регномер комиссии` = "88888"),`Ид\ПРЕ` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код`="002-C");
SELECT "`Состав:КОМ*ПРЕ` Table Content:" FROM `Состав:КОМ*ПРЕ` WHERE 1=0;
SELECT * FROM `Состав:КОМ*ПРЕ`;
DROP TABLE IF EXISTS `Записан: ЭКЗ*КОМ`;
CREATE TABLE `Записан: ЭКЗ*КОМ`
(`Нпп` CHAR (2) NOT NULL
, `Инд. регномер` CHAR (10) NULL
, `Ид\КОМ` INT NOT NULL
, `Ид\ЭКЗ` INT NOT NULL
, `Ид\СЕК` INT NOT NULL
, PRIMARY KEY (`Ид\КОМ`, `Ид\ЭКЗ`)
, FOREIGN KEY (`Ид\КОМ`) REFERENCES `Комиссия` (`Ид`)
, FOREIGN KEY (`Ид\ЭКЗ`) REFERENCES `Экзаменуемый%ПЕРС` (`Ид`)
, FOREIGN KEY (`Ид\СЕК`) REFERENCES `Секретарь:СОТ` (`Ид\СОТ`)
);
INSERT INTO `Записан: ЭКЗ*КОМ` SET `Нпп` = "1" , `Инд. регномер` = NULL, `Ид\КОМ` = (SELECT `Ид` FROM `Комиссия` WHERE `Регномер комиссии` = "88888"), `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "002-П"), `Ид\СЕК` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-C");
INSERT INTO `Записан: ЭКЗ*КОМ` SET `Нпп` = "2" , `Инд. регномер` = NULL, `Ид\КОМ` = (SELECT `Ид` FROM `Комиссия` WHERE `Регномер комиссии` = "88888"), `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "099-П"), `Ид\СЕК` = (SELECT `Ид` FROM `Сотрудник%ПЕРС` WHERE `Код` = "001-C");
SELECT "`Записан: ЭКЗ*КОМ` Table Content:" FROM `Записан: ЭКЗ*КОМ` WHERE 1=0;
SELECT * FROM `Записан: ЭКЗ*КОМ`;
DROP TABLE IF EXISTS `Общая программа`;
CREATE TABLE `Общая программа`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Регномер` CHAR (10) NOT NULL, UNIQUE KEY (`Регномер`)
);
INSERT INTO `Общая программа` VALUES
(NULL, "2111111111"),
(NULL, "2111111112");
SELECT "`Общая программа` Table Content:" FROM `Общая программа` WHERE 1=0;
SELECT * FROM `Общая программа`;
DROP TABLE IF EXISTS `Заседание комиссии:КОМ`;
CREATE TABLE `Заседание комиссии:КОМ`
(`Учебгод` CHAR (4) NOT NULL
, `Дата заседания` DATE NOT NULL
, `Оценка` CHAR (1) NOT NULL
, `Ид\ОБЩп` INT NOT NULL
, `Ид\КОМ` INT NOT NULL
, PRIMARY KEY (`Ид\КОМ`)
, FOREIGN KEY (`Ид\КОМ`) REFERENCES `Комиссия` (`Ид`)
, FOREIGN KEY (`Ид\ОБЩп`) REFERENCES `Общая программа` (`Ид`)
);
INSERT INTO `Заседание комиссии:КОМ` SET `Учебгод` = "2023" , `Дата заседания` = "2023.12.10", `Оценка` = "5", `Ид\ОБЩп` = (SELECT `Ид` FROM `Общая программа` WHERE `Регномер` = "2111111111"), `Ид\КОМ` = (SELECT `Ид` FROM `Комиссия` WHERE `Регномер комиссии` = "88888");
SELECT "`Заседание комиссии:КОМ` Table Content:" FROM `Заседание комиссии:КОМ` WHERE 1=0;
SELECT * FROM `Заседание комиссии:КОМ`;
DROP TABLE IF EXISTS `Общий вопрос\ОБЩп`;
CREATE TABLE `Общий вопрос\ОБЩп`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Ид_ВИДв\СПР` INT NOT NULL
, FOREIGN KEY (`Ид_ВИДв\СПР`) REFERENCES `Справка+` (`Ид`)
, `Формулировка` CHAR (50) NOT NULL
, `Номер` CHAR (2) NOT NULL
, `Ид\ОБЩп` INT NOT NULL
, UNIQUE KEY (`Номер`, `Ид\ОБЩп`)
, FOREIGN KEY (`Ид\ОБЩп`) REFERENCES `Общая программа` (`Ид`)
);
INSERT INTO `Общий вопрос\ОБЩп` SET `Ид` = NULL, `Ид_ВИДв\СПР` = (SELECT `Ид` FROM `Справка+` WHERE `СЛК`="ВИДв" AND `Код`="в1"), `Формулировка` = "...", `Номер` = "5", `Ид\ОБЩп` = (SELECT `Ид` FROM `Общая программа` WHERE `Регномер`="2111111111");
SELECT "`Общий вопрос\ОБЩп` Table Content:" FROM `Общий вопрос\ОБЩп` WHERE 1=0;
SELECT * FROM `Общий вопрос\ОБЩп`;
DROP TABLE IF EXISTS `Индивидуальный вопрос\ИНДп`;
CREATE TABLE `Индивидуальный вопрос\ИНДп`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY
, `Ид_ВИДв\СПР` INT NOT NULL
, FOREIGN KEY (`Ид_ВИДв\СПР`) REFERENCES `Справка+` (`Ид`)
, `Формулировка` CHAR (50) NOT NULL
, `Номер` CHAR (2) NOT NULL
, `Ид\ИНДп` INT NOT NULL
, UNIQUE KEY (`Номер`, `Ид\ИНДп`)
, FOREIGN KEY (`Ид\ИНДп`) REFERENCES `Индивидуальная программа` (`Ид`)
);
INSERT INTO `Индивидуальный вопрос\ИНДп` SET `Ид` = NULL, `Ид_ВИДв\СПР` = (SELECT `Ид` FROM `Справка+` WHERE `СЛК`="ВИДв" AND `Код`="в1"), `Формулировка` = "...", `Номер` = "7", `Ид\ИНДп` = (SELECT `Ид` FROM `Индивидуальная программа` WHERE `Регномер`="1111111111");
SELECT "`Индивидуальный вопрос\ИНДп` Table Content:" FROM `Индивидуальный вопрос\ИНДп` WHERE 1=0;
SELECT * FROM `Индивидуальный вопрос\ИНДп`;
DROP TABLE IF EXISTS `ОБЩ%СДЧэ`;
CREATE TABLE `ОБЩ%СДЧэ`
(`Инд. рег номер` CHAR (10) NOT NULL
, `Нпп` CHAR (2) NOT NULL
, `Ответ на вопрос` CHAR (100) NOT NULL
, `Оценка за вопрос` CHAR (1) NOT NULL
, `Ид\ЭКЗ` INT NOT NULL
, `Ид\ОБЩв` INT (1) NOT NULL
, `Ид\ЗАСк` INT (10) NOT NULL
, PRIMARY KEY (`Ид\ЭКЗ`, `Ид\ОБЩв`,`Ид\ЗАСк` )
, FOREIGN KEY (`Ид\ЭКЗ`) REFERENCES `Экзаменуемый%ПЕРС` (`Ид`)
, FOREIGN KEY (`Ид\ОБЩв`) REFERENCES `Общий вопрос\ОБЩп` (`Ид`)
, FOREIGN KEY (`Ид\ЗАСк`) REFERENCES `Заседание комиссии:КОМ` (`Ид\КОМ`)
);
INSERT INTO `ОБЩ%СДЧэ` SET `Инд. рег номер` = "1010", `Нпп` = "9", `Ответ на вопрос` = "...", `Оценка за вопрос` = "4", `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "099-П"), `Ид\ОБЩв` = (SELECT `Ид` FROM `Общий вопрос\ОБЩп` WHERE `Номер`="5" AND `Ид\ОБЩп`="1" ), `Ид\ЗАСк` = (SELECT `Ид` FROM `Комиссия` WHERE `Регномер комиссии` = "88888") ;
SELECT "`ОБЩ%СДЧэ` Table Content:" FROM `ОБЩ%СДЧэ` WHERE 1=0;
SELECT * FROM `ОБЩ%СДЧэ`;
DROP TABLE IF EXISTS `ИНД%СДЧэ`;
CREATE TABLE `ИНД%СДЧэ`
(`Инд. рег номер` CHAR (10) NOT NULL
, `Нпп` CHAR (2) NOT NULL
, `Ответ на вопрос` CHAR (100) NOT NULL
, `Оценка за вопрос` CHAR (1) NOT NULL
, `Ид\ЭКЗ` INT NOT NULL
, `Ид\ИНДв` INT (1) NOT NULL
, `Ид\ЗАСк` INT (10) NOT NULL
, PRIMARY KEY (`Ид\ЭКЗ`, `Ид\ИНДв`,`Ид\ЗАСк` )
, FOREIGN KEY (`Ид\ЭКЗ`) REFERENCES `Экзаменуемый%ПЕРС` (`Ид`)
, FOREIGN KEY (`Ид\ИНДв`) REFERENCES `Индивидуальный вопрос\ИНДп` (`Ид`)
, FOREIGN KEY (`Ид\ЗАСк`) REFERENCES `Заседание комиссии:КОМ` (`Ид\КОМ`)
);
INSERT INTO `ИНД%СДЧэ` SET `Инд. рег номер` = "1010", `Нпп` = "9", `Ответ на вопрос` = "...", `Оценка за вопрос` = "5", `Ид\ЭКЗ` = (SELECT `Ид` FROM `Экзаменуемый%ПЕРС` WHERE `Код` = "099-П"), `Ид\ИНДв` = (SELECT `Ид` FROM `Индивидуальный вопрос\ИНДп` WHERE `Номер`="7" AND `Ид\ИНДп`="1" ), `Ид\ЗАСк` = (SELECT `Ид` FROM `Комиссия` WHERE `Регномер комиссии` = "88888") ;
SELECT "`ИНД%СДЧэ` Table Content:" FROM `ИНД%СДЧэ` WHERE 1=0;
SELECT * FROM `ИНД%СДЧэ`;
DROP VIEW IF EXISTS `вирт_Комиссия`;
CREATE VIEW `вирт_Комиссия` AS
SELECT
`КОМ`.`Учебгод` AS `Учебгод`,
`КОМ`.`Регномер комиссии` AS `Регномер комиссии`,
`СПР1`.`Код` AS `Код дисциплины`,
`СПР1`.`Название` AS `Название дисциплины`,
`ПРИ`.`Регномер` AS `Регномер приказа`,
`ПРИ`.`Дата` AS `Дата приказа`,
`СОТ`.`Код` AS `Код руководителя`,
`СОТ`.`ФИО` AS `ФИО руководителя`,
`СПР2`.`Код` AS `Код должности`,
`СПР2`.`Название` AS `Название должности`,
`КОМ`.`Ид` AS `Ид\Комиссия`
FROM `Комиссия` AS `КОМ`
INNER JOIN `Справка+` AS `СПР1` ON `КОМ`.`Ид_ДИС\СПР` = `СПР1`.`Ид`
INNER JOIN `Приказ` AS `ПРИ` ON `КОМ`.`Ид\ПРИ` = `ПРИ`.`Ид`
INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `ПРИ`.`Ид\РУК` = `СОТ`.`Ид`
INNER JOIN `Руководитель:СОТ` AS `РУК` ON `ПРИ`.`Ид\РУК` = `РУК`.`Ид\СОТ`
INNER JOIN `Справка+` AS `СПР2` ON `РУК`.`Ид_ДОЛ\СПР` = `СПР2`.`Ид`
WHERE `СПР2`.`Слк` = "ДОЛ" AND `СПР1`.`Слк` = "ДИС"
;
SELECT * FROM `вирт_Комиссия`;
DROP PROCEDURE IF EXISTS `проц_Состав`;
CREATE PROCEDURE `проц_Состав`
(IN `Вх:Ид\Комиссия` INT)
SELECT
`СОС`.`Нпп` AS `Нпп`,
`СОТ`.`Код` AS `Код преподавателя`,
`СОТ`.`ФИО` AS `ФИО преподавателя`,
`СПР1`.`Код` AS `Код должности`,
`СПР1`.`Название` AS `Название должности`,
`КАФ`.`Код` AS `Код кафедры`,
`КАФ`.`Название` AS `Название кафедры`,
`ФАК`.`Код` AS `Код факультета`,
`ФАК`.`Название` AS `Название факультета`,
`СОС`.`Роль` AS `Роль`
FROM `Состав:КОМ*ПРЕ` AS `СОС`
INNER JOIN `Сотрудник%ПЕРС` AS `СОТ` ON `СОС`.`Ид\ПРЕ` = `СОТ`.`Ид`
INNER JOIN `Преподаватель:СОТ` AS `ПРЕ` ON `СОС`.`Ид\ПРЕ` = `ПРЕ`.`Ид\СОТ`
INNER JOIN `Справка+` AS `СПР1` ON `ПРЕ`.`Ид_ДОЛ\СПР` = `СПР1`.`Ид`
INNER JOIN `Кафедра\ФАК` AS `КАФ` ON `ПРЕ`.`Ид\КАФ` = `КАФ`.`Ид`
INNER JOIN `Факультет` AS `ФАК` ON `КАФ`.`Ид\ФАК` = `ФАК`.`Ид`
WHERE `СОС`.`Ид\КОМ` = `Вх:Ид\Комиссия` AND `СПР1`.`Слк` = "ДОЛ"
;CALL `проц_Состав` (1);
DROP VIEW IF EXISTS `вирт_Комиссия%Экзаменуемый`;
CREATE VIEW `вирт_Комиссия%Экзаменуемый` AS
SELECT
`КОМ`.`Учебгод` AS `Учебгод`,
`КОМ`.`Регномер комиссии` AS `Регномер комиссии`,
`СПР1`.`Код` AS `Код дисциплины`,
`ЗАПэ`.`Нпп` AS `Нпп`,
`ЭКЗ`.`Код` AS `Код экзаменуемого`,
`ЭКЗ`.`ФИО` AS `ФИО экзаменуемого`,
`КАФ`.`Код` AS `Код кафедры`,
`ФАК`.`Код` AS `Код факультета`,
`КАФ`.`Название` AS `Название кафедры`,
`ЗАПэ`.`Инд. регномер` AS `Инд. регномер`,
`СОТ`.`Код` AS `Код секретаря`,
`СОТ`.`ФИО` AS `ФИО секретаря`,
`ВУЗ`.`Код` AS `Код вуза`,
`ВУЗ`.`Название` AS `Название вуза`
FROM `Комиссия` AS `КОМ`
INNER JOIN `Справка+` AS `СПР1`
ON `КОМ`.`Ид_ДИС\СПР` = `СПР1`.`Ид`
INNER JOIN `Записан: ЭКЗ*КОМ` AS `ЗАПэ`
ON `КОМ`.`Ид` = `ЗАПэ`.`Ид\КОМ`
INNER JOIN `Сотрудник%ПЕРС` AS `СОТ`
ON `ЗАПэ`.`Ид\СЕК` = `СОТ`.`Ид`
INNER JOIN `Экзаменуемый%ПЕРС` AS `ЭКЗ`
ON `ЗАПэ`.`Ид\ЭКЗ` = `ЭКЗ`.`Ид`
LEFT JOIN `Свой:ЭКЗ` AS `СВОЙ`
ON `ЭКЗ`.`Ид` = `СВОЙ`.`Ид\ЭКЗ`
LEFT JOIN `Кафедра\ФАК` AS `КАФ`
ON `СВОЙ`.`Ид\КАФ` = `КАФ`.`Ид`
LEFT JOIN `Факультет` AS `ФАК`
ON `КАФ`.`Ид\ФАК` = `ФАК`.`Ид`
LEFT JOIN `Чужой:ЭКЗ` AS `ЧУЖ`
ON `ЭКЗ`.`Ид` = `ЧУЖ`.`Ид\ЭКЗ`
LEFT JOIN `Вуз` AS `ВУЗ`
ON `ЧУЖ`.`Ид\ВУЗ` = `ВУЗ`.`Ид`
WHERE `СПР1`.`Слк` = "ДИС"
;
SELECT * FROM `вирт_Комиссия%Экзаменуемый`;