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


Вот 5 готовых баз данных под ваши предметные области. В каждой 6+ таблиц, связи через FOREIGN KEY и по 10 строк данных. Просто вставляйте скрипт в New Query Tab и жмите ⚡ Execute.

---

1. Система техподдержки

Связи: клиент → тикет → сообщение; агент → тикет; категория → тикет; тикет → оценка.

```sql
CREATE DATABASE support_db;
USE support_db;

CREATE TABLE clients (
  client_id INT PRIMARY KEY AUTO_INCREMENT,
  full_name VARCHAR(100),
  email VARCHAR(100) UNIQUE
);

CREATE TABLE agents (
  agent_id INT PRIMARY KEY AUTO_INCREMENT,
  full_name VARCHAR(100),
  department VARCHAR(80)
);

CREATE TABLE categories (
  category_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(80)
);

CREATE TABLE tickets (
  ticket_id INT PRIMARY KEY AUTO_INCREMENT,
  client_id INT,
  agent_id INT,
  category_id INT,
  subject VARCHAR(150),
  status VARCHAR(30),
  created_at DATETIME,
  FOREIGN KEY (client_id) REFERENCES clients(client_id),
  FOREIGN KEY (agent_id) REFERENCES agents(agent_id),
  FOREIGN KEY (category_id) REFERENCES categories(category_id)
);

CREATE TABLE messages (
  message_id INT PRIMARY KEY AUTO_INCREMENT,
  ticket_id INT,
  sender_type VARCHAR(20),
  body TEXT,
  sent_at DATETIME,
  FOREIGN KEY (ticket_id) REFERENCES tickets(ticket_id)
);

CREATE TABLE ratings (
  rating_id INT PRIMARY KEY AUTO_INCREMENT,
  ticket_id INT,
  score INT,
  comment VARCHAR(200),
  FOREIGN KEY (ticket_id) REFERENCES tickets(ticket_id)
);

INSERT INTO clients (full_name, email) VALUES
('Иванов И.','i@mail.ru'),('Петров П.','p@mail.ru'),('Сидоров С.','s@mail.ru'),
('Кузнецов К.','k@mail.ru'),('Смирнов С.','sm@mail.ru'),('Орлов О.','o@mail.ru'),
('Зайцев З.','z@mail.ru'),('Морозов М.','m@mail.ru'),('Волков В.','v@mail.ru'),
('Новиков Н.','n@mail.ru');

INSERT INTO agents (full_name, department) VALUES
('Анна А.','1-я линия'),('Борис Б.','1-я линия'),('Виктор В.','2-я линия'),
('Галина Г.','2-я линия'),('Дмитрий Д.','Технический'),('Елена Е.','Технический'),
('Жанна Ж.','Биллинг'),('Зинаида З.','Биллинг'),('Игорь И.','Эскалация'),
('Ксения К.','Эскалация');

INSERT INTO categories (name) VALUES
('Техническая'),('Оплата'),('Доставка'),('Возврат'),('Аккаунт'),
('ПО'),('Железо'),('Сеть'),('Безопасность'),('Прочее');

INSERT INTO tickets (client_id, agent_id, category_id, subject, status, created_at) VALUES
(1,1,1,'Не работает вход','Открыт','2024-04-01 10:00'),
(2,2,2,'Ошибка оплаты','В работе','2024-04-01 11:00'),
(3,3,3,'Задержка доставки','Закрыт','2024-04-02 09:30'),
(4,4,4,'Возврат товара','Открыт','2024-04-02 12:15'),
(5,5,5,'Сброс пароля','Закрыт','2024-04-03 08:00'),
(6,6,6,'Баг в приложении','В работе','2024-04-03 14:20'),
(7,7,7,'Шумит вентилятор','Открыт','2024-04-04 10:10'),
(8,8,8,'Плохой интернет','Закрыт','2024-04-04 16:40'),
(9,9,9,'Подозрительный вход','В работе','2024-04-05 09:00'),
(10,10,10,'Другой вопрос','Открыт','2024-04-05 15:00');

INSERT INTO messages (ticket_id, sender_type, body, sent_at) VALUES
(1,'client','Не могу войти','2024-04-01 10:01'),
(1,'agent','Проверьте пароль','2024-04-01 10:05'),
(2,'client','Оплата не проходит','2024-04-01 11:01'),
(3,'agent','Заказ в пути','2024-04-02 09:35'),
(4,'client','Хочу вернуть','2024-04-02 12:16'),
(5,'agent','Пароль сброшен','2024-04-03 08:10'),
(6,'client','Приложение падает','2024-04-03 14:21'),
(7,'agent','Привезём замену','2024-04-04 10:15'),
(8,'client','Скорость низкая','2024-04-04 16:41'),
(9,'agent','Проверяем логи','2024-04-05 09:05');

INSERT INTO ratings (ticket_id, score, comment) VALUES
(1,5,'Быстро'),(2,4,'Хорошо'),(3,5,'Отлично'),(4,3,'Средне'),
(5,5,'Супер'),(6,4,'Норм'),(7,2,'Долго'),(8,5,'Спасибо'),
(9,4,'Ок'),(10,5,'Класс');
```

---

2. Платформа для подкастов

Связи: автор → подкаст → эпизод; слушатель → подписка; эпизод → прослушивание; подкаст ↔ категория.

```sql
CREATE DATABASE podcast_db;
USE podcast_db;

CREATE TABLE authors (
  author_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(100),
  email VARCHAR(100) UNIQUE
);

CREATE TABLE categories (
  category_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(80)
);

CREATE TABLE podcasts (
  podcast_id INT PRIMARY KEY AUTO_INCREMENT,
  title VARCHAR(150),
  author_id INT,
  category_id INT,
  created_at DATE,
  FOREIGN KEY (author_id) REFERENCES authors(author_id),
  FOREIGN KEY (category_id) REFERENCES categories(category_id)
);

CREATE TABLE episodes (
  episode_id INT PRIMARY KEY AUTO_INCREMENT,
  podcast_id INT,
  title VARCHAR(150),
  duration_min INT,
  published_at DATE,
  FOREIGN KEY (podcast_id) REFERENCES podcasts(podcast_id)
);

CREATE TABLE listeners (
  listener_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(100),
  email VARCHAR(100) UNIQUE
);

CREATE TABLE subscriptions (
  sub_id INT PRIMARY KEY AUTO_INCREMENT,
  listener_id INT,
  podcast_id INT,
  subscribed_at DATE,
  FOREIGN KEY (listener_id) REFERENCES listeners(listener_id),
  FOREIGN KEY (podcast_id) REFERENCES podcasts(podcast_id)
);

CREATE TABLE listens (
  listen_id INT PRIMARY KEY AUTO_INCREMENT,
  listener_id INT,
  episode_id INT,
  listened_at DATETIME,
  FOREIGN KEY (listener_id) REFERENCES listeners(listener_id),
  FOREIGN KEY (episode_id) REFERENCES episodes(episode_id)
);

INSERT INTO authors (name, email) VALUES
('Иванов','i@p.ru'),('Петров','p@p.ru'),('Сидоров','s@p.ru'),
('Кузнецов','k@p.ru'),('Смирнов','sm@p.ru'),('Орлов','o@p.ru'),
('Зайцев','z@p.ru'),('Морозов','m@p.ru'),('Волков','v@p.ru'),('Новиков','n@p.ru');

INSERT INTO categories (name) VALUES
('Технологии'),('Наука'),('Бизнес'),('Спорт'),('Юмор'),
('История'),('Кино'),('Музыка'),('Здоровье'),('Образование');

INSERT INTO podcasts (title, author_id, category_id, created_at) VALUES
('IT Weekly',1,1,'2023-01-01'),('Science Now',2,2,'2023-02-01'),
('Бизнес-час',3,3,'2023-03-01'),('Спорт Live',4,4,'2023-04-01'),
('Смех до слёз',5,5,'2023-05-01'),('История РФ',6,6,'2023-06-01'),
('Кинокритика',7,7,'2023-07-01'),('Хиты 2000',8,8,'2023-08-01'),
('Здоровье+',9,9,'2023-09-01'),('Учись легко',10,10,'2023-10-01');

INSERT INTO episodes (podcast_id, title, duration_min, published_at) VALUES
(1,'Выпуск 1: Python',45,'2024-01-01'),(2,'Космос',60,'2024-01-02'),
(3,'Стартапы',50,'2024-01-03'),(4,'Футбол',40,'2024-01-04'),
(5,'Анекдоты',30,'2024-01-05'),(6,'Пётр I',70,'2024-01-06'),
(7,'Оскар',55,'2024-01-07'),(8,'Backstreet Boys',35,'2024-01-08'),
(9,'Сон',40,'2024-01-09'),(10,'Математика',50,'2024-01-10');

INSERT INTO listeners (name, email) VALUES
('Аня','a@l.ru'),('Боря','b@l.ru'),('Вика','v@l.ru'),('Гена','g@l.ru'),
('Даша','d@l.ru'),('Егор','e@l.ru'),('Жанна','zh@l.ru'),('Зина','z@l.ru'),
('Илья','i@l.ru'),('Катя','k@l.ru');

INSERT INTO subscriptions (listener_id, podcast_id, subscribed_at) VALUES
(1,1,'2024-02-01'),(2,2,'2024-02-02'),(3,3,'2024-02-03'),
(4,4,'2024-02-04'),(5,5,'2024-02-05'),(6,6,'2024-02-06'),
(7,7,'2024-02-07'),(8,8,'2024-02-08'),(9,9,'2024-02-09'),(10,10,'2024-02-10');

INSERT INTO listens (listener_id, episode_id, listened_at) VALUES
(1,1,'2024-03-01 10:00'),(2,2,'2024-03-01 11:00'),(3,3,'2024-03-02 09:00'),
(4,4,'2024-03-02 12:00'),(5,5,'2024-03-03 08:00'),(6,6,'2024-03-03 14:00'),
(7,7,'2024-03-04 10:00'),(8,8,'2024-03-04 15:00'),(9,9,'2024-03-05 09:00'),
(10,10,'2024-03-05 16:00');
```

---

3. Стриминговая платформа

Связи: пользователь → подписка (план); контент ↔ жанр; контент → просмотр; контент → студия.

```sql
CREATE DATABASE streaming_db;
USE streaming_db;

CREATE TABLE plans (
  plan_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(50),
  price DECIMAL(8,2)
);

CREATE TABLE users (
  user_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(100),
  email VARCHAR(100) UNIQUE,
  plan_id INT,
  FOREIGN KEY (plan_id) REFERENCES plans(plan_id)
);

CREATE TABLE studios (
  studio_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(100),
  country VARCHAR(80)
);

CREATE TABLE genres (
  genre_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(50)
);

CREATE TABLE content (
  content_id INT PRIMARY KEY AUTO_INCREMENT,
  title VARCHAR(150),
  type VARCHAR(20),
  year INT,
  studio_id INT,
  genre_id INT,
  FOREIGN KEY (studio_id) REFERENCES studios(studio_id),
  FOREIGN KEY (genre_id) REFERENCES genres(genre_id)
);

CREATE TABLE views (
  view_id INT PRIMARY KEY AUTO_INCREMENT,
  user_id INT,
  content_id INT,
  watched_at DATETIME,
  minutes INT,
  FOREIGN KEY (user_id) REFERENCES users(user_id),
  FOREIGN KEY (content_id) REFERENCES content(content_id)
);

INSERT INTO plans (name, price) VALUES
('Базовый',299),('Стандарт',499),('Премиум',799),('Семейный',999),('Студент',149),
('Годовой',4990),('Пробный',0),('Спорт',599),('Кино',449),('Музыка',249);

INSERT INTO users (name, email, plan_id) VALUES
('Иван','i@s.ru',1),('Пётр','p@s.ru',2),('Сидор','s@s.ru',3),
('Кузьма','k@s.ru',4),('Семён','sm@s.ru',5),('Олег','o@s.ru',6),
('Захар','z@s.ru',7),('Марк','m@s.ru',8),('Виктор','v@s.ru',9),('Никита','n@s.ru',10);

INSERT INTO studios (name, country) VALUES
('Warner','USA'),('Universal','USA'),('Sony','Japan'),('Мосфильм','RU'),
('Netflix','USA'),('HBO','USA'),('BBC','UK'),('Canal+','FR'),
('Disney','USA'),('Paramount','USA');

INSERT INTO genres (name) VALUES
('Драма'),('Комедия'),('Боевик'),('Фантастика'),('Ужасы'),
('Документальный'),('Анимация'),('Триллер'),('Мелодрама'),('Фэнтези');

INSERT INTO content (title, type, year, studio_id, genre_id) VALUES
('Начало','фильм',2010,1,4),('Маска','фильм',1994,2,2),
('Ирония судьбы','фильм',1975,4,9),('Чернобыль','сериал',2019,6,1),
('Симпсоны','мульт',1989,10,7),('Дюна','фильм',2021,1,4),
('Друзья','сериал',1994,1,2),('Игра престолов','сериал',2011,6,10),
('Планета Земля','док',2006,7,6),('Тёмный рыцарь','фильм',2008,1,3);

INSERT INTO views (user_id, content_id, watched_at, minutes) VALUES
(1,1,'2024-05-01 20:00',148),(2,2,'2024-05-02 21:00',101),
(3,3,'2024-05-03 19:00',184),(4,4,'2024-05-04 22:00',60),
(5,5,'2024-05-05 18:00',22),(6,6,'2024-05-06 20:30',155),
(7,7,'2024-05-07 21:15',25),(8,8,'2024-05-08 23:00',57),
(9,9,'2024-05-09 17:00',50),(10,10,'2024-05-10 22:00',152);
```

---

4. Кулинарная книга рецептов

Связи: рецепт ↔ ингредиент (many-to-many через recipe_ingredients); рецепт → категория; рецепт → автор; рецепт → отзыв; шаги.

```sql
CREATE DATABASE recipes_db;
USE recipes_db;

CREATE TABLE authors (
  author_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(100),
  email VARCHAR(100) UNIQUE
);

CREATE TABLE categories (
  category_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(80)
);

CREATE TABLE recipes (
  recipe_id INT PRIMARY KEY AUTO_INCREMENT,
  title VARCHAR(150),
  author_id INT,
  category_id INT,
  cook_minutes INT,
  servings INT,
  FOREIGN KEY (author_id) REFERENCES authors(author_id),
  FOREIGN KEY (category_id) REFERENCES categories(category_id)
);

CREATE TABLE ingredients (
  ingredient_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(100),
  unit VARCHAR(20)
);

CREATE TABLE recipe_ingredients (
  id INT PRIMARY KEY AUTO_INCREMENT,
  recipe_id INT,
  ingredient_id INT,
  amount DECIMAL(8,2),
  FOREIGN KEY (recipe_id) REFERENCES recipes(recipe_id),
  FOREIGN KEY (ingredient_id) REFERENCES ingredients(ingredient_id)
);

CREATE TABLE steps (
  step_id INT PRIMARY KEY AUTO_INCREMENT,
  recipe_id INT,
  step_no INT,
  description VARCHAR(300),
  FOREIGN KEY (recipe_id) REFERENCES recipes(recipe_id)
);

CREATE TABLE reviews (
  review_id INT PRIMARY KEY AUTO_INCREMENT,
  recipe_id INT,
  user_name VARCHAR(100),
  score INT,
  comment VARCHAR(200),
  FOREIGN KEY (recipe_id) REFERENCES recipes(recipe_id)
);

INSERT INTO authors (name, email) VALUES
('Ольга','o@r.ru'),('Мария','m@r.ru'),('Наталья','n@r.ru'),('Ирина','i@r.ru'),
('Елена','e@r.ru'),('Татьяна','t@r.ru'),('Светлана','s@r.ru'),('Анна','a@r.ru'),
('Юлия','u@r.ru'),('Дарья','d@r.ru');

INSERT INTO categories (name) VALUES
('Супы'),('Салаты'),('Десерты'),('Горячее'),('Напитки'),
('Закуски'),('Выпечка'),('Завтраки'),('Соусы'),('Вегетарианское');

INSERT INTO recipes (title, author_id, category_id, cook_minutes, servings) VALUES
('Борщ',1,1,90,6),('Цезарь',2,2,20,2),('Тирамису',3,3,60,4),
('Стейк',4,4,25,1),('Лимонад',5,5,10,4),('Брускетта',6,6,15,3),
('Пицца',7,7,120,4),('Омлет',8,8,10,2),('Песто',9,9,15,4),
('Овощное рагу',10,10,45,5);

INSERT INTO ingredients (name, unit) VALUES
('Свёкла','г'),('Капуста','г'),('Мясо','г'),('Помидор','шт'),
('Сыр','г'),('Мука','г'),('Сахар','г'),('Яйцо','шт'),
('Лимон','шт'),('Базилик','г');

INSERT INTO recipe_ingredients (recipe_id, ingredient_id, amount) VALUES
(1,1,300),(1,2,200),(1,3,500),(2,4,3),(2,5,100),
(3,6,200),(3,7,150),(4,3,300),(5,9,2),(6,10,20);

INSERT INTO steps (recipe_id, step_no, description) VALUES
(1,1,'Сварить бульон'),(1,2,'Добавить свёклу'),
(2,1,'Нарезать салат'),(2,2,'Добавить соус'),
(3,1,'Взбить яйца'),(3,2,'Собрать тирамису'),
(4,1,'Разогреть сковороду'),(4,2,'Обжарить стейк'),
(5,1,'Выжать лимоны'),(5,2,'Добавить сахар');

INSERT INTO reviews (recipe_id, user_name, score, comment) VALUES
(1,'Иван',5,'Вкусно!'),(2,'Пётр',4,'Хорошо'),(3,'Анна',5,'Супер'),
(4,'Олег',3,'Жёстко'),(5,'Мария',5,'Освежает'),(6,'Дина',4,'Ок'),
(7,'Егор',5,'Класс'),(8,'Зоя',5,'Быстро'),(9,'Илья',4,'Норм'),(10,'Катя',5,'Топ');
```

---

5. Благотворительный фонд

Связи: донор → пожертвование → кампания; фонд → проект; волонтёр → участие; получатель ← помощь.

```sql
CREATE DATABASE charity_db;
USE charity_db;

CREATE TABLE donors (
  donor_id INT PRIMARY KEY AUTO_INCREMENT,
  full_name VARCHAR(100),
  email VARCHAR(100) UNIQUE
);

CREATE TABLE campaigns (
  campaign_id INT PRIMARY KEY AUTO_INCREMENT,
  title VARCHAR(150),
  target_amount DECIMAL(12,2),
  start_date DATE,
  end_date DATE
);

CREATE TABLE donations (
  donation_id INT PRIMARY KEY AUTO_INCREMENT,
  donor_id INT,
  campaign_id INT,
  amount DECIMAL(12,2),
  donated_at DATETIME,
  FOREIGN KEY (donor_id) REFERENCES donors(donor_id),
  FOREIGN KEY (campaign_id) REFERENCES campaigns(campaign_id)
);

CREATE TABLE volunteers (
  volunteer_id INT PRIMARY KEY AUTO_INCREMENT,
  full_name VARCHAR(100),
  phone VARCHAR(20)
);

CREATE TABLE projects (
  project_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(150),
  campaign_id INT,
  location VARCHAR(150),
  FOREIGN KEY (campaign_id) REFERENCES campaigns(campaign_id)
);

CREATE TABLE volunteer_participation (
  part_id INT PRIMARY KEY AUTO_INCREMENT,
  volunteer_id INT,
  project_id INT,
  hours INT,
  participation_date DATE,
  FOREIGN KEY (volunteer_id) REFERENCES volunteers(volunteer_id),
  FOREIGN KEY (project_id) REFERENCES projects(project_id)
);

CREATE TABLE beneficiaries (
  beneficiary_id INT PRIMARY KEY AUTO_INCREMENT,
  name VARCHAR(150),
  category VARCHAR(80),
  project_id INT,
  FOREIGN KEY (project_id) REFERENCES projects(project_id)
);

INSERT INTO donors (full_name, email) VALUES
('Иванов И.','i@d.ru'),('Петров П.','p@d.ru'),('Сидоров С.','s@d.ru'),
('Кузнецов К.','k@d.ru'),('Смирнов С.','sm@d.ru'),('Орлов О.','o@d.ru'),
('Зайцев З.','z@d.ru'),('Морозов М.','m@d.ru'),('Волков В.','v@d.ru'),('Новиков Н.','n@d.ru');

INSERT INTO campaigns (title, target_amount, start_date, end_date) VALUES
('Помощь детям',1000000,'2024-01-01','2024-06-01'),
('Больным раком',2000000,'2024-02-01','2024-08-01'),
('Приюту животных',500000,'2024-03-01','2024-07-01'),
('Школам',800000,'2024-01-15','2024-09-01'),
('Старикам',600000,'2024-02-15','2024-10-01'),
('Экология',700000,'2024-03-10','2024-11-01'),
('Спорт детям',400000,'2024-04-01','2024-12-01'),
('Инвалидам',900000,'2024-01-20','2024-08-20'),
('Культура',300000,'2024-02-20','2024-09-20'),
('Наука',350000,'2024-03-15','2024-10-15');

INSERT INTO donations (donor_id, campaign_id, amount, donated_at) VALUES
(1,1,5000,'2024-01-05 10:00'),(2,2,10000,'2024-02-06 11:00'),
(3,3,3000,'2024-03-07 12:00'),(4,4,15000,'2024-01-20 13:00'),
(5,5,7000,'2024-02-20 14:00'),(6,6,8000,'2024-03-15 15:00'),
(7,7,2000,'2024-04-05 16:00'),(8,8,12000,'2024-01-25 17:00'),
(9,9,4000,'2024-02-25 18:00'),(10,10,6000,'2024-03-20 19:00');

INSERT INTO volunteers (full_name, phone) VALUES
('Аня','+7001'),('Боря','+7002'),('Вика','+7003'),('Гена','+7004'),
('Даша','+7005'),('Егор','+7006'),('Жанна','+7007'),('Зина','+7008'),
('Илья','+7009'),('Катя','+7010');

INSERT INTO projects (name, campaign_id, location) VALUES
('Больница №1',1,'Москва'),('Онкоцентр',2,'СПб'),
('Приют Друг',3,'Казань'),('Школа №5',4,'Екб'),
('Дом престарелых',5,'Новосиб'),('Лесопарк',6,'Сочи'),
('Секция футбола',7,'Самара'),('Центр инвалидов',8,'Уфа'),
('Театр',9,'Пермь'),('Лаборатория',10,'Тверь');

INSERT INTO volunteer_participation (volunteer_id, project_id, hours, participation_date) VALUES
(1,1,8,'2024-05-01'),(2,2,6,'2024-05-02'),(3,3,10,'2024-05-03'),
(4,4,4,'2024-05-04'),(5,5,7,'2024-05-05'),(6,6,5,'2024-05-06'),
(7,7,3,'2024-05-07'),(8,8,9,'2024-05-08'),(9,9,6,'2024-05-09'),(10,10,8,'2024-05-10');

INSERT INTO beneficiaries (name, category, project_id) VALUES
('Дети-сироты','Дети',1),('Больные','Медицина',2),
('Собаки','Животные',3),('Ученики','Образование',4),
('Пенсионеры','Соц.защита',5),('Парк','Экология',6),
('Дети-спортсмены','Спорт',7),('Инвалиды','Соц.защита',8),
('Артисты','Культура',9),('Учёные','Наука',10);
```

---

Как запустить всё сразу

1. Откройте File → New Query Tab.
2. Вставьте скрипт нужной базы (например, support_db).
3. ⚡ Execute (Ctrl+Shift+Enter).
4. В панели Schemas нажмите Refresh All — появятся все 5 баз: support_db, podcast_db, streaming_db, recipes_db, charity_db.

Чтобы построить ER-диаграммы

Database → Reverse Engineer → выберите базу → Workbench сам нарисует схему со всеми связями.

Хотите — могу:

· объединить все 5 баз в один .sql-файл;
· добавить ещё таблицы в каждую (например, statuses, logs, payments);
· или сделать 10+ таблиц там, где преподаватель требует больше.

Скажите, что нужно — подготовлю.