DROP TABLE IF EXISTS `Справка+`;
CREATE TABLE `Справка+`
( `Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`Слк` CHAR (4) NOT NULL
, `Код` CHAR (4) NOT NULL
, `Название` VARCHAR (50) NOT NULL
, CONSTRAINT `УН\СПР` UNIQUE KEY (`Слк`, `Код`));
INSERT INTO `Справка+` VALUES
(DEFAULT, "ОРГ", "1", "Организация"),
(DEFAULT, "УЧСТ", "2", "Ученая степень"),
(DEFAULT, "УЧЗВ", "3", "Ученое звание ");
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
, `Паспорт` CHAR (11) NOT NULL UNIQUE
, `ФИО` VARCHAR (50) NOT NULL
, `Ид_ОРГ\ЭКС^СПР` INT NOT NULL
REFERENCES `Справка+` (`Ид`)
, `Ид_УЧЗВ\ЭКС^СПР` INT NOT NULL
REFERENCES `Справка+` (`Ид`)
, `Ид_УЧСТ\ЭКС^СПР` INT NOT NULL
REFERENCES `Справка+` (`Ид`));
INSERT INTO `Эксперт%ПЕРС` SET
`Ид` = DEFAULT, `Код` = "001-ОП", `Паспорт` = "8017 546384", `ФИО` = "Кириллов К. Ю.",
`Ид_ОРГ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ОРГ" AND `Код` = "1"),
`Ид_УЧЗВ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧЗВ" AND `Код` = "3"),
`Ид_УЧСТ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧСТ" AND `Код` = "2");
INSERT INTO `Эксперт%ПЕРС` SET
`Ид` = DEFAULT, `Код` = "001-ПВ", `Паспорт` = "8017 348293", `ФИО` = "Архипов А. К.",
`Ид_ОРГ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ОРГ" AND `Код` = "1"),
`Ид_УЧЗВ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧЗВ" AND `Код` = "3"),
`Ид_УЧСТ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧСТ" AND `Код` = "2");
INSERT INTO `Эксперт%ПЕРС` SET
`Ид` = DEFAULT, `Код` = "002-АД", `Паспорт` = "8015 457933", `ФИО` = "Кудряшов А. В.",
`Ид_ОРГ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ОРГ" AND `Код` = "1"),
`Ид_УЧЗВ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧЗВ" AND `Код` = "3"),
`Ид_УЧСТ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧСТ" AND `Код` = "2");
INSERT INTO `Эксперт%ПЕРС` SET
`Ид` = DEFAULT, `Код` = "001-ПА", `Паспорт` = "8021 483920", `ФИО` = "Дементьев Р. И.",
`Ид_ОРГ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ОРГ" AND `Код` = "1"),
`Ид_УЧЗВ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧЗВ" AND `Код` = "3"),
`Ид_УЧСТ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧСТ" AND `Код` = "2");
INSERT INTO `Эксперт%ПЕРС` SET
`Ид` = DEFAULT, `Код` = "001-П", `Паспорт` = "8017 347346", `ФИО` = "Лукин О. Д.",
`Ид_ОРГ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "ОРГ" AND `Код` = "1"),
`Ид_УЧЗВ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧЗВ" AND `Код` = "3"),
`Ид_УЧСТ\ЭКС^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Слк` = "УЧСТ" 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 (11) NOT NULL);
INSERT INTO `Диссовет` VALUES
(DEFAULT, "2023", "26.11.2023"),
(DEFAULT, "2022", "21.09.2022");
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
, `Дата` CHAR (11) NOT NULL
, `Ид\ДИС^СОВ` INT NOT NULL
REFERENCES `Диссовет` (`Ид`));
INSERT INTO `Диссертация\СОВ` SET
`Ид` = DEFAULT, `Регномер` = "123", `Дата` = "26.11.2023",
`Ид\ДИС^СОВ` = (SELECT `Ид` FROM `Диссовет` WHERE `Код` = "2023");
INSERT INTO `Диссертация\СОВ` SET
`Ид` = DEFAULT, `Регномер` = "124", `Дата` = "21.09.2021",
`Ид\ДИС^СОВ` = (SELECT `Ид` FROM `Диссовет` WHERE `Код` = "2022");
SELECT "`Диссертация\СОВ` Table Content:" FROM `Диссертация\СОВ` WHERE 1 = 0;
SELECT * FROM `Диссертация\СОВ`;
DROP TABLE IF EXISTS `Отзыв`;
CREATE TABLE `Отзыв`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`Регномер` VARCHAR (50) NOT NULL UNIQUE KEY
, `Дата получения` VARCHAR (50) NOT NULL
, `Критические замечания` VARCHAR (50) NULL
, `Ид\ОТЗ^СПР` INT NOT NULL
REFERENCES `Справка+` (`Ид`));
INSERT INTO `Отзыв` SET
`Ид` = DEFAULT,
`Регномер` = "101-10", `Дата получения` = "23.10.2023", `Критические замечания` = null,
`Ид\ОТЗ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Код` = "1");
INSERT INTO `Отзыв` SET
`Ид` = DEFAULT,
`Регномер` = "102-11", `Дата получения` = "23.10.2022", `Критические замечания` = null,
`Ид\ОТЗ^СПР` = (SELECT `Ид` FROM `Справка+` WHERE `Код` = "1");
SELECT "`Отзыв` Table Content:" FROM `Отзыв` WHERE 1 = 0;
SELECT * FROM `Отзыв`;
DROP TABLE IF EXISTS `Подписант: ЭКС*ОТЗ`;
CREATE TABLE `Подписант: ЭКС*ОТЗ`
(CONSTRAINT `ПК\ПОДП`
PRIMARY KEY (`Ид\ПОДП^ЭКС`, `Ид\ПОДП^ОТЗ`)
, `Ид\ПОДП^ЭКС` INT NOT NULL
REFERENCES `Эксперт%ПЕРС` (`Ид`)
, `Ид\ПОДП^ОТЗ` INT NOT NULL
REFERENCES `Отзыв` (`Ид`));
INSERT INTO `Подписант: ЭКС*ОТЗ` SET
`Ид\ПОДП^ЭКС` = (SELECT `Ид` FROM `Эксперт%ПЕРС` WHERE `Код` = "001-П"),
`Ид\ПОДП^ОТЗ` = (SELECT `Ид` FROM `Отзыв` WHERE `Регномер` = "101-10");
INSERT INTO `Подписант: ЭКС*ОТЗ` SET
`Ид\ПОДП^ЭКС` = (SELECT `Ид` FROM `Эксперт%ПЕРС` WHERE `Код` = "001-П"),
`Ид\ПОДП^ОТЗ` = (SELECT `Ид` FROM `Отзыв` WHERE `Регномер` = "102-11");
SELECT "`Подписант: ЭКС*ОТЗ` Table Content:" FROM `Подписант: ЭКС*ОТЗ` WHERE 1 = 0;
SELECT * FROM `Подписант: ЭКС*ОТЗ`;
DROP TABLE IF EXISTS `Отзыв ведущей`;
CREATE TABLE `Отзыв ведущей`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`Входящий номер` VARCHAR (50) NOT NULL UNIQUE KEY
, `Входящая дата` VARCHAR (50) NULL
, `Критические замечания` VARCHAR (50) NULL
, `Ид\ОТЗВ^ДИС` INT NOT NULL
REFERENCES `Диссертация\СОВ` (`Ид`));
INSERT INTO `Отзыв ведущей` SET
`Ид` = DEFAULT, `Входящий номер` = "51", `Входящая дата` = "20.10.2022",
`Критические замечания` = null,
`Ид\ОТЗВ^ДИС` = (SELECT `Ид` FROM `Диссертация\СОВ` WHERE `Регномер` = "124");
SELECT "`Отзыв ведущей` Table Content:" FROM `Отзыв ведущей` WHERE 1 = 0;
SELECT * FROM `Отзыв ведущей`;
DROP TABLE IF EXISTS `Подписант ведущей: ЭКС*ОТЗВ`;
CREATE TABLE `Подписант ведущей: ЭКС*ОТЗВ`
(`Код_ЭКС` VARCHAR (10) NOT NULL DEFAULT "001-ПВ"
,`Номер_ОТЗВ` VARCHAR (50) NOT NULL DEFAULT "51"
, `Роль` VARCHAR (50) NOT NULL
, CONSTRAINT `ПК\ПОДВ`
PRIMARY KEY (`Код_ЭКС`, `Номер_ОТЗВ`)
, CONSTRAINT `ВК1\ПОДВ^ЭКС`
FOREIGN KEY (`Код_ЭКС`)
REFERENCES `Эксперт%ПЕРС` (`Код`)
, CONSTRAINT `ВК2\ПОДВ^ОТЗВ`
FOREIGN KEY (`Номер_ОТЗВ`)
REFERENCES `Отзыв ведущей` (`Входящий номер`));
INSERT INTO `Подписант ведущей: ЭКС*ОТЗВ` VALUES
(DEFAULT, DEFAULT, "Подписант ведущей организации");
SELECT "`Подписант: СПЕЦ*ОТЗВ` Table Content:" FROM `Подписант ведущей: ЭКС*ОТЗВ` WHERE 1 = 0;
SELECT * FROM `Подписант ведущей: ЭКС*ОТЗВ`;
DROP TABLE IF EXISTS `Оппонент: ЭКС*ДИС`;
CREATE TABLE `Оппонент: ЭКС*ДИС`
(CONSTRAINT `ПК\ОПП`
PRIMARY KEY (`Ид\ОПП^ЭКС`, `Ид\ОПП^ДИС`)
, `Ид\ОПП^ЭКС` INT NOT NULL
REFERENCES `Эксперт%ПЕРС` (`Ид`)
, `Ид\ОПП^ДИС` INT NOT NULL
REFERENCES `Диссертация\СОВ` (`Ид`));
INSERT INTO `Оппонент: ЭКС*ДИС` SET
`Ид\ОПП^ЭКС` = (SELECT `Ид` FROM `Эксперт%ПЕРС` WHERE `Код` = "001-ОП"),
`Ид\ОПП^ДИС` = (SELECT `Ид` FROM `Диссертация\СОВ` WHERE `Регномер` = "124");
SELECT "`Оппонент: ЭКС*ДИС` Table Content:" FROM `Оппонент: ЭКС*ДИС` WHERE 1 = 0;
SELECT * FROM `Оппонент: ЭКС*ДИС`;
DROP TABLE IF EXISTS `Отзыв оппонента`;
CREATE TABLE `Отзыв оппонента`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`Входящий номер` VARCHAR (50) NOT NULL UNIQUE KEY
, `Входящая дата` VARCHAR (50) NULL
, `Критические замечания` VARCHAR (50) NOT NULL
, `Ид\ОТЗО^ОПП` INT NOT NULL
REFERENCES `Оппонент: ЭКС*ДИС` (`Ид\ОПП^ЭКС`));
INSERT INTO `Отзыв оппонента` SET
`Ид` = DEFAULT,
`Входящий номер` = "75940", `Входящая дата` = "20.10.2022", `Критические замечания` = "Отсутствуют" ,
`Ид\ОТЗО^ОПП` = (SELECT `Ид\ОПП^ЭКС` FROM `Оппонент: ЭКС*ДИС` WHERE `Ид\ОПП^ЭКС` = 1);
SELECT "`Отзыв оппонента` Table Content:" FROM `Отзыв оппонента` WHERE 1 = 0;
SELECT * FROM `Отзыв оппонента`;
DROP TABLE IF EXISTS `Адресат: ЭКС*ДИС`;
CREATE TABLE `Адресат: ЭКС*ДИС`
(`Номер экземпляра` VARCHAR (10) NOT NULL
, CONSTRAINT `ПК\АДР`
PRIMARY KEY (`Ид\АДР^ЭКС`, `Ид\АДР^ДИС`)
, `Ид\АДР^ЭКС` INT NOT NULL
REFERENCES `Эксперт%ПЕРС` (`Ид`)
, `Ид\АДР^ДИС` INT NOT NULL
REFERENCES `Диссертация\СОВ` (`Ид`));
INSERT INTO `Адресат: ЭКС*ДИС` SET
`Ид\АДР^ЭКС` = (SELECT `Ид` FROM `Эксперт%ПЕРС` WHERE `Код` = "002-АД"),
`Ид\АДР^ДИС` = (SELECT `Ид` FROM `Диссертация\СОВ` WHERE `Регномер` = "123"),
`Номер экземпляра` = "№2";
SELECT "`Адресат: ЭКС*ДИС` Table Content:" FROM `Адресат: ЭКС*ДИС` WHERE 1 = 0;
SELECT * FROM `Адресат: ЭКС*ДИС`;
DROP TABLE IF EXISTS `Отзыв адресата`;
CREATE TABLE `Отзыв адресата`
(`Ид` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`Входящий номер` VARCHAR (50) NOT NULL UNIQUE KEY
, `Входящая дата` VARCHAR (50) NULL
, `Критические замечания` VARCHAR (50) NULL
, `Ид\ОТЗА^АДР` INT NOT NULL
REFERENCES `Адресат: ЭКС*ДИС` (`Ид\АДР^ЭКС`));
INSERT INTO `Отзыв адресата` SET
`Ид` = DEFAULT, `Входящий номер` = "56790",
`Входящая дата` = "27.10.2023", `Критические замечания` = null,
`Ид\ОТЗА^АДР` = (SELECT `Ид\АДР^ЭКС` FROM `Адресат: ЭКС*ДИС` WHERE `Ид\АДР^ЭКС` = 3);
SELECT "`Отзыв адресата` Table Content:" FROM `Отзыв адресата` WHERE 1 = 0;
SELECT * FROM `Отзыв адресата`;
DROP TABLE IF EXISTS `Подписант адресат: ЭКС*ОТЗА`;
CREATE TABLE `Подписант адресат: ЭКС*ОТЗА`
(CONSTRAINT `ПК\ПОДА`
PRIMARY KEY (`Ид\ПОДА^ЭКС`, `Ид\ПОДА^ОТЗА`)
, `Ид\ПОДА^ЭКС` INT NOT NULL
REFERENCES `Эксперт%ПЕРС` (`Ид`)
, `Ид\ПОДА^ОТЗА` INT NOT NULL
REFERENCES `Отзыв адресата` (`Ид`));
INSERT INTO `Подписант адресат: ЭКС*ОТЗА` SET
`Ид\ПОДА^ЭКС` = (SELECT `Ид` FROM `Эксперт%ПЕРС` WHERE `Код` = "001-ПА"),
`Ид\ПОДА^ОТЗА` = (SELECT `Ид` FROM `Отзыв адресата` WHERE `Входящий номер` = "56790");
SELECT "`Подписант адресат: ЭКС*ОТЗА` Table Content:" FROM `Подписант адресат: ЭКС*ОТЗА` WHERE 1 = 0;
SELECT * FROM `Подписант адресат: ЭКС*ОТЗА`;