Hi! Could we please enable some services and cookies to improve your experience and our website?

SQLize | PHPize | SQLtest

Online Sandbox for SQL and PHP: Write, Run, Test, and Share SQL Queries and PHP Code

A A A
Login    Share code      Blog   FAQ
Copy Format Clear
CREATE TABLE IF NOT EXISTS `Справка` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код` INT NOT NULL, `Слк` CHAR(3) NOT NULL, `Название` VARCHAR(50) NOT NULL, `Содержание` VARCHAR(100) NULL, `ИД_родитель` INT NULL, CONSTRAINT `Ун_СПР` UNIQUE (`Слк`, `Код`), CONSTRAINT `Ун_СПР_ИД_Код` UNIQUE (`ИД`, `Код`), CONSTRAINT `ВК1_СПР_СПР` FOREIGN KEY (`ИД_родитель`) REFERENCES `Справка` (`ИД`) ); INSERT INTO `Справка` (`ИД`, `Код`, `Слк`, `Название`, `Содержание`, `ИД_родитель`) VALUES (1, 1, 'ДОЛ', 'оформитель', 'оформитель заказа', NULL), (2, 2, 'ДОЛ', 'плановик', 'плановик заказа', NULL), (3, 3, 'ДОЛ', 'менеджер', 'менеджер заказа', NULL), (4, 4, 'ДОЛ', 'исполнитель', 'исполнитель работы', NULL); SELECT * FROM `Справка`; CREATE TABLE IF NOT EXISTS `Клиент_ПЕРС` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код` INT NOT NULL UNIQUE, `Паспорт` CHAR(10) NOT NULL UNIQUE, `ФИО` VARCHAR(50) NOT NULL, `Адрес` VARCHAR(150) NOT NULL ); INSERT INTO `Клиент_ПЕРС` (`Код`, `Паспорт`, `ФИО`, `Адрес`) VALUES (111, '8018234567', 'Петров Д. И.', 'ул. Менделеева 110, кв. 72'), (112, '8020234457', 'Романов С. Ю.', 'ул. Батырская 8, кв. 48'); SELECT * FROM `Клиент_ПЕРС`; CREATE TABLE IF NOT EXISTS `Вид_затраты_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_вида_затраты` INT NOT NULL UNIQUE, `Название_вида_затраты` VARCHAR(100) NOT NULL ); INSERT INTO `Вид_затраты_СПР` (`Код_вида_затраты`, `Название_вида_затраты`) VALUES (1, 'Заработная плата'), (2, 'Материальные затраты'), (3, 'Транспортные расходы'), (4, 'Командировочные расходы'); SELECT * FROM `Вид_затраты_СПР`; CREATE TABLE IF NOT EXISTS `Вид_работы_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_вида_работы` INT NOT NULL UNIQUE, `Название_вида_работы` VARCHAR(100) NOT NULL ); INSERT INTO `Вид_работы_СПР` (`Код_вида_работы`, `Название_вида_работы`) VALUES (1, 'Монтаж'), (2, 'Сварочные работы'), (3, 'Покраска'), (4, 'Электромонтаж'); SELECT * FROM `Вид_работы_СПР`; CREATE TABLE IF NOT EXISTS `Вид_задания_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_вида_задания` INT NOT NULL UNIQUE, `Название_вида_задания` VARCHAR(100) NOT NULL ); INSERT INTO `Вид_задания_СПР` (`Код_вида_задания`, `Название_вида_задания`) VALUES (1, 'Проектирование'), (2, 'Монтаж'), (3, 'Диагностика'), (4, 'Ремонт'); SELECT * FROM `Вид_задания_СПР`; CREATE TABLE IF NOT EXISTS `Вид_условия_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_вида_условия` INT NOT NULL UNIQUE, `Название_вида_условия` VARCHAR(100) NOT NULL ); INSERT INTO `Вид_условия_СПР` (`Код_вида_условия`, `Название_вида_условия`) VALUES (1, 'Гарантийное обслуживание'), (2, 'Срочное выполнение'), (3, 'Отложенный заказ'), (4, 'Специальные условия'); SELECT * FROM `Вид_условия_СПР`; CREATE TABLE IF NOT EXISTS `Вид_материала_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_вида_материала` INT NOT NULL UNIQUE, `Название_вида_материала` VARCHAR(100) NOT NULL ); INSERT INTO `Вид_материала_СПР` (`Код_вида_материала`, `Название_вида_материала`) VALUES (1, 'Металл'), (2, 'Древесина'), (3, 'Пластик'), (4, 'Композитные материалы'); SELECT * FROM `Вид_материала_СПР`; CREATE TABLE IF NOT EXISTS `Вид_замечания_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_вида_замечания` INT NOT NULL UNIQUE, `Название_вида_замечания` VARCHAR(100) NOT NULL ); INSERT INTO `Вид_замечания_СПР` (`Код_вида_замечания`, `Название_вида_замечания`) VALUES (1, 'Несоответствие чертежу'), (2, 'Повреждение материала'), (3, 'Ошибки в сборке'), (4, 'Недостаточная прочность'); SELECT * FROM `Вид_замечания_СПР`; CREATE TABLE IF NOT EXISTS `Сотрудник_ПЕРС` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код` INT NOT NULL UNIQUE, `Паспорт` CHAR(10) NOT NULL UNIQUE, `Сведения` VARCHAR(150) NOT NULL, `ИД_Слк` INT NOT NULL, `ИД_Код` INT NOT NULL, CONSTRAINT `ВК1_СПР_Сотрудник` FOREIGN KEY (`ИД_Слк`) REFERENCES `Справка` (`ИД`) ); ALTER TABLE `Сотрудник_ПЕРС` ADD CONSTRAINT `Ун_Сотрудник_Слк_Код` UNIQUE (`ИД_Слк`, `ИД_Код`); INSERT INTO `Сотрудник_ПЕРС` (`Код`, `Паспорт`, `Сведения`, `ИД_Слк`, `ИД_Код`) VALUES (101, '8011234567', 'Отдел оформления', 1, 11), (102, '2088234567', 'Отдел планирования', 2, 22), (103, '8012344597', 'Отдел менеджмента', 3, 33), (104, '8776234567', 'Отдел исполнения', 4, 44); SELECT * FROM `Сотрудник_ПЕРС`; CREATE TABLE IF NOT EXISTS `Оформитель_СОТ` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_ОФ_СОТ` INT NOT NULL UNIQUE, `ФИО` VARCHAR(50) NOT NULL, `ИД_Слк_родитель` INT NOT NULL, `ИД_Код_родитель` INT NOT NULL, CONSTRAINT `ВК1_ОФ_СОТ` FOREIGN KEY (`ИД_Слк_родитель`, `ИД_Код_родитель`) REFERENCES `Сотрудник_ПЕРС` (`ИД_Слк`, `ИД_Код`) ); INSERT INTO `Оформитель_СОТ` (`Код_ОФ_СОТ`, `ФИО`, `ИД_Слк_родитель`, `ИД_Код_родитель`) VALUES (101, 'Сидоров П. Н.', 1, 11); SELECT * FROM `Оформитель_СОТ`; CREATE TABLE IF NOT EXISTS `Плановик_СОТ` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_ПЛАН_СОТ` INT NOT NULL UNIQUE, `ФИО` VARCHAR(50) NOT NULL, `ИД_Слк_родитель` INT NOT NULL, `ИД_Код_родитель` INT NOT NULL, CONSTRAINT `ВК1_ПЛАН_СОТ` FOREIGN KEY (`ИД_Слк_родитель`, `ИД_Код_родитель`) REFERENCES `Сотрудник_ПЕРС` (`ИД_Слк`, `ИД_Код`) ); INSERT INTO `Плановик_СОТ` (`Код_ПЛАН_СОТ`, `ФИО`, `ИД_Слк_родитель`, `ИД_Код_родитель`) VALUES (102, 'Иванов А. В.', 2, 22); SELECT * FROM `Плановик_СОТ`; CREATE TABLE IF NOT EXISTS `Менеджер_СОТ` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_МЕН_СОТ` INT NOT NULL UNIQUE, `ФИО` VARCHAR(50) NOT NULL, `ИД_Слк_родитель` INT NOT NULL, `ИД_Код_родитель` INT NOT NULL, CONSTRAINT `ВК1_МЕН_СОТ` FOREIGN KEY (`ИД_Слк_родитель`, `ИД_Код_родитель`) REFERENCES `Сотрудник_ПЕРС` (`ИД_Слк`, `ИД_Код`) ); INSERT INTO `Менеджер_СОТ` (`Код_МЕН_СОТ`, `ФИО`, `ИД_Слк_родитель`, `ИД_Код_родитель`) VALUES (103, 'Петров С. Г.', 3, 33); SELECT * FROM `Менеджер_СОТ`; CREATE TABLE IF NOT EXISTS `Исполнитель_СОТ` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_ИСП_СОТ` INT NOT NULL UNIQUE, `ФИО` VARCHAR(50) NOT NULL, `ИД_Слк_родитель` INT NOT NULL, `ИД_Код_родитель` INT NOT NULL, CONSTRAINT `ВК1_ИСП_СОТ` FOREIGN KEY (`ИД_Слк_родитель`, `ИД_Код_родитель`) REFERENCES `Сотрудник_ПЕРС` (`ИД_Слк`, `ИД_Код`) ); INSERT INTO `Исполнитель_СОТ` (`Код_ИСП_СОТ`, `ФИО`, `ИД_Слк_родитель`, `ИД_Код_родитель`) VALUES (104, 'Стрельников К. М.', 4, 44); SELECT * FROM `Исполнитель_СОТ`; CREATE TABLE IF NOT EXISTS `Заказ_СПР` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Регномер_заказа` INT NOT NULL UNIQUE, `Дата_заказа` DATE NOT NULL, `Описание` VARCHAR(255) NOT NULL, `ИД_клиента` INT NOT NULL, -- Внешний ключ на ИД клиента CONSTRAINT `ВК1_ЗАКАЗ_СПР` FOREIGN KEY (`ИД_клиента`) REFERENCES `Клиент_ПЕРС` (`Код`) ); INSERT INTO `Заказ_СПР` (`Регномер_заказа`, `Дата_заказа`, `Описание`, `ИД_клиента`) VALUES (1001, '2024-03-01', "Заказ на установку оборудования", 111), (1002, '2024-03-05', "Заказ на ремонт техники", 112), (1003, '2024-03-10', "Дополнительный заказ", 111), (1004, '2024-03-15', "Аварийный ремонт", 112); SELECT "`Заказ_СПР` Table Content:" FROM `Заказ_СПР` WHERE 1=0; SELECT * FROM `Заказ_СПР`; CREATE TABLE IF NOT EXISTS `Задание` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Регномер_задания` INT NOT NULL UNIQUE, `ИД_вида_задания` INT NOT NULL, `ИД_заказа` INT NOT NULL, CONSTRAINT `FK_Задание_ВидЗадания` FOREIGN KEY (`ИД_вида_задания`) REFERENCES `Вид_задания_СПР` (`Код_вида_задания`), CONSTRAINT `FK_Задание_Заказ` FOREIGN KEY (`ИД_заказа`) REFERENCES `Заказ_СПР` (`Регномер_заказа`) ); INSERT INTO `Задание` (`Регномер_задания`, `ИД_вида_задания`, `ИД_заказа`) VALUES (101, 1, 1001), (102, 2, 1002), (103, 3, 1003), (104, 4, 1004); SELECT * FROM `Задание`; CREATE TABLE IF NOT EXISTS `Работа_ЗАДАН` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `Код_РАБОТЫ` INT NOT NULL UNIQUE, `Содержание_работы` VARCHAR(255) NOT NULL, `ИД_задания` INT NOT NULL, CONSTRAINT `FK_Работа_Задание` FOREIGN KEY (`ИД_задания`) REFERENCES `Задание` (`ИД`) ); INSERT INTO `Работа_ЗАДАН` (`Код_РАБОТЫ`, `Содержание_работы`, `ИД_задания`) VALUES (201, 'Монтаж кабельной линии', 1), (202, 'Настройка оборудования', 2), (203, 'Пусконаладочные работы', 3); SELECT * FROM `Работа_ЗАДАН`; CREATE TABLE IF NOT EXISTS `Исполнитель_работы` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `ИД_работы` INT NOT NULL, `Роль_рабочего` VARCHAR(255), CONSTRAINT `FK_Исполнитель_Работа` FOREIGN KEY (`ИД_работы`) REFERENCES `Работа_ЗАДАН` (`ИД`) ); INSERT INTO `Исполнитель_работы` (`ИД_работы`, `Роль_рабочего`) VALUES (1, "Бригадир"), (2, "Инженер"), (3, NULL); SELECT * FROM `Исполнитель_работы`; CREATE TABLE IF NOT EXISTS `Оформил_заказ` ( `ИД` INT AUTO_INCREMENT PRIMARY KEY, `ИД_заказа` INT NOT NULL, `ИД_оформителя` INT NOT NULL, `Дата_оформления` DATE NOT NULL, CONSTRAINT `ВК1_ЗАКАЗ_ОФОРМ` FOREIGN KEY (`ИД_заказа`) REFERENCES `Заказ_СПР` (`ИД`), CONSTRAINT `ВК2_ЗАКАЗ_ОФОРМ` FOREIGN KEY (`ИД_оформителя`) REFERENCES `Оформитель_СОТ` (`ИД`) -- Теперь ссылаемся на правильное поле ); INSERT INTO `Оформил_заказ` (`ИД_заказа`, `ИД_оформителя`, `Дата_оформления`) VALUES (1, 1, '2024-03-02'), (2, 1, '2024-03-06'); SELECT * FROM `Оформил_заказ`; DROP TABLE IF EXISTS `Особое_условие_клиента_ЗАДАН`; CREATE TABLE `Особое_условие_клиента_ЗАДАН` ( `ИД_условия` INT AUTO_INCREMENT PRIMARY KEY, `Содержание_условия` VARCHAR(255) NOT NULL, `ИД_задания` INT NOT NULL, `ИД_вида_условия` INT NOT NULL, CONSTRAINT `FK_ОсобоеУсловие_Задание` FOREIGN KEY (`ИД_задания`) REFERENCES `Задание` (`ИД`), CONSTRAINT `FK_ОсобоеУсловие_ВидУсловия` FOREIGN KEY (`ИД_вида_условия`) REFERENCES `Вид_условия_СПР` (`ИД`) ); INSERT INTO `Особое_условие_клиента_ЗАДАН` (`ИД_задания`, `ИД_вида_условия`, `Содержание_условия`) VALUES (1, 1, 'Работа выполняется в ночное время'), (2, 2, 'Использование только сертифицированных материалов'), (3, 3, 'Запрещено использование открытого огня'), (4, 4, 'Требуется дополнительный контроль качества'); SELECT * FROM `Особое_условие_клиента_ЗАДАН`; CREATE TABLE IF NOT EXISTS `Замечания_по_исполнению_ИСПРАБ` ( `ИД_замечания` INT AUTO_INCREMENT NOT NULL PRIMARY KEY, `ИД_исполнителя_работы` INT NOT NULL, `ИД_работы` INT NOT NULL, `ИД_вида_замечания` INT NOT NULL, `Содержание_замечания` VARCHAR(255) NOT NULL, `Устранение_замечания` VARCHAR(255) NULL, CONSTRAINT `ВК1_ЗАМ_ИСПРАБ` FOREIGN KEY (`ИД_исполнителя_работы`) REFERENCES `Исполнитель_работы` (`ИД`), CONSTRAINT `ВК2_ЗАМ_ИСПРАБ` FOREIGN KEY (`ИД_вида_замечания`) REFERENCES `Вид_замечания_СПР` (`ИД`) ); INSERT INTO `Замечания_по_исполнению_ИСПРАБ` (`ИД_исполнителя_работы`, `ИД_работы`, `ИД_вида_замечания`, `Содержание_замечания`, `Устранение_замечания`) VALUES (1, 1, 1, "Недостаточная толщина слоя", "Исправлено, добавлен слой"), (2, 2, 2, "Неровность поверхности", NULL), (3, 3, 3, "Использован несертифицированный материал", "Заменён на сертифицированный"); SELECT * FROM `Замечания_по_исполнению_ИСПРАБ`; CREATE TABLE IF NOT EXISTS `Расход_материала_ИСПРАБ` ( `ИД_расхода` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `ИД_исполнителя_работы` INT NOT NULL, `ИД_работы` INT NOT NULL, `Количество_материала` DECIMAL(10,2) NOT NULL, `Марка_материала` VARCHAR(50) NULL, CONSTRAINT `ВК1_РАСХ_ИСПРАБ` FOREIGN KEY (`ИД_исполнителя_работы`) REFERENCES `Исполнитель_работы` (`ИД`), CONSTRAINT `ВК2_РАСХ_ИСПРАБ` FOREIGN KEY (`ИД_работы`) REFERENCES `Работа_ЗАДАН` (`ИД`) ); INSERT INTO `Расход_материала_ИСПРАБ` (`ИД_исполнителя_работы`, `ИД_работы`, `Количество_материала`, `Марка_материала`) VALUES (1, 1, 15.5, "Марка-А"), (1, 2, 8.0, "Марка-Б"), (1, 3, 12.3, NULL); SELECT * FROM `Расход_материала_ИСПРАБ`; CREATE TABLE IF NOT EXISTS `Затрата_по_работе_РАБ_ВИДЗАТ` ( `ИД_затраты` INT AUTO_INCREMENT PRIMARY KEY, `ИД_вида_работы` INT NOT NULL, `ИД_вида_затраты` INT NOT NULL, `Объем_затраты` DECIMAL(10,2) NOT NULL, CONSTRAINT `FK_Затрата_Работа` FOREIGN KEY (`ИД_вида_работы`) REFERENCES `Вид_работы_СПР` (`ИД`), CONSTRAINT `FK_Затрата_ВидЗатраты` FOREIGN KEY (`ИД_вида_затраты`) REFERENCES `Вид_затраты_СПР` (`ИД`) ); INSERT INTO `Затрата_по_работе_РАБ_ВИДЗАТ` (`ИД_вида_работы`, `ИД_вида_затраты`, `Объем_затраты`) VALUES (1, 1, 500.00), (1, 2, 300.50), (2, 3, 700.75), (3, 4, 1000.00); SELECT * FROM `Затрата_по_работе_РАБ_ВИДЗАТ`;

Stuck with a problem? Got Error? Ask AI support!

Copy Clear