CREATE DATABASE software_developer_tracker;
USE software_developer_tracker;
-- 1. Разработчики
CREATE TABLE developers (
id INT PRIMARY KEY AUTO_INCREMENT,
full_name VARCHAR(100) NOT NULL,
role VARCHAR(50) NOT NULL,
is_active BOOLEAN DEFAULT TRUE
);
-- 2. Проекты
CREATE TABLE projects (
id INT PRIMARY KEY AUTO_INCREMENT,
project_name VARCHAR(150) NOT NULL,
client VARCHAR(100) NOT NULL,
status VARCHAR(50) DEFAULT 'разраб'
);
-- 3. Ошибки
CREATE TABLE bugs (
id INT PRIMARY KEY AUTO_INCREMENT,
project_id INT NOT NULL,
description TEXT NOT NULL,
fixed BOOLEAN DEFAULT FALSE,
fixed_by INT,
FOREIGN KEY (project_id) REFERENCES projects(id),
FOREIGN KEY (fixed_by) REFERENCES developers(id)
);
-- 4. Отчёты
CREATE TABLE reports (
id INT PRIMARY KEY AUTO_INCREMENT,
developer_id INT NOT NULL,
report_date DATE NOT NULL,
done TEXT NOT NULL,
problems TEXT,
FOREIGN KEY (developer_id) REFERENCES developers(id)
);
INSERT INTO developers (full_name, role) VALUES
('Иван Петров', 'backend'),
('Мария Сидорова', 'frontend');
INSERT INTO projects (project_name, client, status) VALUES
('CRM для магазина', 'ООО Ромашка', 'тест'),
('Мобильное приложение', 'Такси Онлайн', 'разраб');
INSERT INTO bugs (project_id, description, fixed) VALUES
(1, 'Не загружается список товаров', FALSE);
INSERT INTO reports (developer_id, report_date, done, problems) VALUES
(1, '2024-03-01', 'Написал API', 'Проблема с авторизацией');