Загрузка данных


-- СОЗДАНИЕ БАЗЫ ДАННЫХ И ТАБЛИЦ (выполнить в MySQL Shell)
CREATE DATABASE IF NOT EXISTS kursach_technicalum;
USE kursach_technicalum;

-- Таблица групп
CREATE TABLE IF NOT EXISTS `groups` (
    id INT PRIMARY KEY AUTO_INCREMENT,
    group_name VARCHAR(50) NOT NULL,
    specialization VARCHAR(100) NOT NULL,
    student_count INT DEFAULT 0
);

-- Таблица студентов
CREATE TABLE IF NOT EXISTS students (
    id INT PRIMARY KEY AUTO_INCREMENT,
    full_name VARCHAR(100) NOT NULL,
    group_name VARCHAR(50),
    course INT,
    phone VARCHAR(20),
    FOREIGN KEY (group_name) REFERENCES `groups`(group_name) ON DELETE SET NULL
);

-- Таблица преподавателей
CREATE TABLE IF NOT EXISTS teachers (
    id INT PRIMARY KEY AUTO_INCREMENT,
    full_name VARCHAR(100) NOT NULL,
    subject VARCHAR(100),
    experience INT
);

-- Таблица расписания
CREATE TABLE IF NOT EXISTS schedule (
    id INT PRIMARY KEY AUTO_INCREMENT,
    day_of_week VARCHAR(20),
    group_name VARCHAR(50),
    subject VARCHAR(100),
    teacher_name VARCHAR(100),
    classroom VARCHAR(10),
    FOREIGN KEY (group_name) REFERENCES `groups`(group_name) ON DELETE CASCADE
);

-- ВСТАВКА ТЕСТОВЫХ ДАННЫХ
INSERT INTO `groups` (group_name, specialization, student_count) VALUES
('П-11', 'Программирование', 25),
('П-12', 'Программирование', 24),
('Э-21', 'Электроснабжение', 22),
('С-31', 'Строительство', 20);

INSERT INTO students (full_name, group_name, course, phone) VALUES
('Иванов Иван Иванович', 'П-11', 1, '+7-999-123-45-67'),
('Петров Петр Петрович', 'П-11', 1, '+7-999-234-56-78'),
('Сидорова Анна Сергеевна', 'П-12', 1, '+7-999-345-67-89'),
('Кузнецов Алексей Дмитриевич', 'Э-21', 2, '+7-999-456-78-90');

INSERT INTO teachers (full_name, subject, experience) VALUES
('Смирнова Елена Викторовна', 'Программирование на C#', 12),
('Козлов Дмитрий Андреевич', 'Базы данных', 8),
('Морозова Ольга Петровна', 'Математика', 15);

INSERT INTO schedule (day_of_week, group_name, subject, teacher_name, classroom) VALUES
('Понедельник', 'П-11', 'Программирование на C#', 'Смирнова Е.В.', '308'),
('Понедельник', 'П-11', 'Базы данных', 'Козлов Д.А.', '305'),
('Вторник', 'П-11', 'Математика', 'Морозова О.П.', '204'),
('Среда', 'П-12', 'Программирование на C#', 'Смирнова Е.В.', '308');

-- Создание пользователя (если нужно)
CREATE USER IF NOT EXISTS 'kurs'@'192.168.5.%' IDENTIFIED BY 'your_password_here';
GRANT ALL PRIVILEGES ON kursach_technicalum.* TO 'kurs'@'192.168.5.%';
FLUSH PRIVILEGES;

SELECT '✅ База данных и таблицы успешно созданы!' AS status;