/
Riny
/
course_project
Обзор
Документация
Войти
/
Riny
/
course_project
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
sql/course_project.sql
311 строк
9 KB
Riny
Загрузить файлы в «»
26 июн 2026, 03:52
Верифицирован
26 июн 2026, 03:52
1858d95
Код
Авторство
О чём код?
-- phpMyAdmin SQL Dump -- version 5.2.1 -- https://www.phpmyadmin.net/ -- -- Хост: 127.0.0.1 -- Время создания: Июн 25 2026 г., 21:27 -- Версия сервера: 10.4.32-MariaDB -- Версия PHP: 8.2.12 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- База данных: `course_project` -- -- -------------------------------------------------------- -- -- Структура таблицы `additional_works` -- CREATE TABLE `additional_works` ( `id_work` int(11) NOT NULL, `id_responsible_employee` int(11) NOT NULL, `id_work_type` int(11) NOT NULL, `start_date` date NOT NULL, `end_date` date DEFAULT NULL, `planned_duration` int(11) NOT NULL, `planned_employee_count` int(11) NOT NULL ) ; -- -- Дамп данных таблицы `additional_works` -- INSERT INTO `additional_works` (`id_work`, `id_responsible_employee`, `id_work_type`, `start_date`, `end_date`, `planned_duration`, `planned_employee_count`) VALUES (1, 1, 1, '2025-05-01', '2025-05-03', 16, 2), (2, 1, 2, '2025-05-05', NULL, 24, 3), (3, 3, 4, '2025-05-10', NULL, 12, 2); -- -------------------------------------------------------- -- -- Структура таблицы `employees` -- CREATE TABLE `employees` ( `id_employee` int(11) NOT NULL, `full_name` varchar(150) NOT NULL, `salary` decimal(10,2) NOT NULL, `qualification` varchar(50) NOT NULL, `id_user` int(11) NOT NULL ) ; -- -- Дамп данных таблицы `employees` -- INSERT INTO `employees` (`id_employee`, `full_name`, `salary`, `qualification`, `id_user`) VALUES (1, 'Администратор Системы', 100000.00, 'Эксперт', 1), (2, 'Иванов Иван Иванович', 60000.00, 'Специалист', 2), (3, 'Петрова Анна Сергеевна', 75000.00, 'Ведущий специалист', 3), (4, 'Сидоров Павел Андреевич', 90000.00, 'Эксперт', 4); -- -------------------------------------------------------- -- -- Структура таблицы `roles` -- CREATE TABLE `roles` ( `id_role` int(11) NOT NULL, `name` varchar(50) NOT NULL, `access_level` int(11) NOT NULL ) ; -- -- Дамп данных таблицы `roles` -- INSERT INTO `roles` (`id_role`, `name`, `access_level`) VALUES (1, 'Администратор', 1), (2, 'HR - специалист', 2), (3, 'Менеджер', 3), (4, 'Работник', 4), (5, 'Гость', 0); -- -------------------------------------------------------- -- -- Структура таблицы `users` -- CREATE TABLE `users` ( `id_user` int(11) NOT NULL, `login` varchar(50) NOT NULL, `password_hash` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; -- -- Дамп данных таблицы `users` -- INSERT INTO `users` (`id_user`, `login`, `password_hash`) VALUES (1, 'admin', '$2a$12$joU8CrryF1FTmgkFnZsAZeCg3/wEs7byPa4rmHjeXPxuy24ymu9M.'), (2, 'ivanov', '$2a$12$iQ/71yMtI8NQpbhqdRqPYOBCMeuU.L6dd0r40NcsoYCX/fhn86qyu'), (3, 'petrova', '$2a$12$.HLj/UNXBWRQO3FRujEp9u2uH.5FoC8vmJxXF/wVILjdUyKrk0B5a'), (4, 'sidorov', '$2a$12$NRTALH95vmKJzxmQgzXuLe/W8hh8ouc193nyQ6q75AWL2x7pcq77G'); -- -------------------------------------------------------- -- -- Структура таблицы `user_roles` -- CREATE TABLE `user_roles` ( `id_role` int(11) NOT NULL, `id_user` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; -- -- Дамп данных таблицы `user_roles` -- INSERT INTO `user_roles` (`id_role`, `id_user`) VALUES (1, 1), (4, 2), (4, 3), (4, 4); -- -------------------------------------------------------- -- -- Структура таблицы `work_assignments` -- CREATE TABLE `work_assignments` ( `id_work` int(11) NOT NULL, `id_employee` int(11) NOT NULL, `calculated_bonus` decimal(10,2) NOT NULL ) ; -- -- Дамп данных таблицы `work_assignments` -- INSERT INTO `work_assignments` (`id_work`, `id_employee`, `calculated_bonus`) VALUES (1, 2, 5000.00), (1, 3, 6000.00), (2, 2, 0.00), (2, 3, 0.00), (2, 4, 0.00), (3, 3, 0.00), (3, 4, 0.00); -- -------------------------------------------------------- -- -- Структура таблицы `work_types` -- CREATE TABLE `work_types` ( `id_work_type` int(11) NOT NULL, `name` varchar(100) NOT NULL, `payment_amount` decimal(10,2) NOT NULL ) ; -- -- Дамп данных таблицы `work_types` -- INSERT INTO `work_types` (`id_work_type`, `name`, `payment_amount`) VALUES (1, 'Подготовка отчётности', 5000.00), (2, 'Инвентаризация', 7000.00), (3, 'Срочная обработка документов', 4000.00), (4, 'Техническая проверка оборудования', 9000.00); -- -- Индексы сохранённых таблиц -- -- -- Индексы таблицы `additional_works` -- ALTER TABLE `additional_works` ADD PRIMARY KEY (`id_work`), ADD KEY `fk_additional_works_responsible_employee` (`id_responsible_employee`), ADD KEY `fk_additional_works_work_type` (`id_work_type`); -- -- Индексы таблицы `employees` -- ALTER TABLE `employees` ADD PRIMARY KEY (`id_employee`), ADD UNIQUE KEY `ak_employees_id_user` (`id_user`); -- -- Индексы таблицы `roles` -- ALTER TABLE `roles` ADD PRIMARY KEY (`id_role`), ADD UNIQUE KEY `ak_roles_name` (`name`); ALTER TABLE `roles` ADD CONSTRAINT `chk_roles_access_level` CHECK (`access_level` BETWEEN 0 AND 4); -- -- Индексы таблицы `users` -- ALTER TABLE `users` ADD PRIMARY KEY (`id_user`), ADD UNIQUE KEY `ak_users_login` (`login`); -- -- Индексы таблицы `user_roles` -- ALTER TABLE `user_roles` ADD PRIMARY KEY (`id_role`,`id_user`), ADD KEY `fk_user_roles_user` (`id_user`); -- -- Индексы таблицы `work_assignments` -- ALTER TABLE `work_assignments` ADD PRIMARY KEY (`id_work`,`id_employee`), ADD KEY `fk_work_assignments_employee` (`id_employee`); -- -- Индексы таблицы `work_types` -- ALTER TABLE `work_types` ADD PRIMARY KEY (`id_work_type`), ADD UNIQUE KEY `ak_work_types_name` (`name`); -- -- AUTO_INCREMENT для сохранённых таблиц -- -- -- AUTO_INCREMENT для таблицы `additional_works` -- ALTER TABLE `additional_works` MODIFY `id_work` int(11) NOT NULL AUTO_INCREMENT; -- -- AUTO_INCREMENT для таблицы `employees` -- ALTER TABLE `employees` MODIFY `id_employee` int(11) NOT NULL AUTO_INCREMENT; -- -- AUTO_INCREMENT для таблицы `roles` -- ALTER TABLE `roles` MODIFY `id_role` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6; -- -- AUTO_INCREMENT для таблицы `users` -- ALTER TABLE `users` MODIFY `id_user` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5; -- -- AUTO_INCREMENT для таблицы `work_types` -- ALTER TABLE `work_types` MODIFY `id_work_type` int(11) NOT NULL AUTO_INCREMENT; -- -- Ограничения внешнего ключа сохраненных таблиц -- -- -- Ограничения внешнего ключа таблицы `additional_works` -- ALTER TABLE `additional_works` ADD CONSTRAINT `fk_additional_works_responsible_employee` FOREIGN KEY (`id_responsible_employee`) REFERENCES `employees` (`id_employee`) ON UPDATE CASCADE, ADD CONSTRAINT `fk_additional_works_work_type` FOREIGN KEY (`id_work_type`) REFERENCES `work_types` (`id_work_type`) ON UPDATE CASCADE; -- -- Ограничения внешнего ключа таблицы `employees` -- ALTER TABLE `employees` ADD CONSTRAINT `fk_employees_user` FOREIGN KEY (`id_user`) REFERENCES `users` (`id_user`) ON UPDATE CASCADE; -- -- Ограничения внешнего ключа таблицы `user_roles` -- ALTER TABLE `user_roles` ADD CONSTRAINT `fk_user_roles_role` FOREIGN KEY (`id_role`) REFERENCES `roles` (`id_role`) ON DELETE CASCADE ON UPDATE CASCADE, ADD CONSTRAINT `fk_user_roles_user` FOREIGN KEY (`id_user`) REFERENCES `users` (`id_user`) ON DELETE CASCADE ON UPDATE CASCADE; -- -- Ограничения внешнего ключа таблицы `work_assignments` -- ALTER TABLE `work_assignments` ADD CONSTRAINT `fk_work_assignments_employee` FOREIGN KEY (`id_employee`) REFERENCES `employees` (`id_employee`) ON UPDATE CASCADE, ADD CONSTRAINT `fk_work_assignments_work` FOREIGN KEY (`id_work`) REFERENCES `additional_works` (`id_work`) ON DELETE CASCADE ON UPDATE CASCADE; COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;