Есть проблема в понимании mysql

вообщем вот задание:

создать БД test_samson.

Создать в БД таблицу a_product с колонками для хранения товаров: ид, код, название.

Создать в БД таблицу a_property с колонками для хранения свойства товаров: товар, значение свойства.

Создать в БД таблицу a_ price с колонками для хранения цен на товары: связь товар, тип цены и цена.

Создать в БД таблицу a_category с колонками для хранения рубрик: ид, код, название.

Добавить в БД хранение связи товара с рубрикой.

Добавить в БД возможность хранения многоуровневого рубрикатора (уровень вложенности неограничен).

Выгрузить дамп получившейся БД в файл 2.sql.

1.Я правильно понимаю, что лучше это сделать через phpmyadmin, если нет, то как? 2.Подскажите как : 1)Добавить в БД хранение связи товара с рубрикой. 2)Добавить в БД возможность хранения многоуровневого рубрикатора (уровень вложенности неограничен). 3.И если не сложно, то ресурс для изучения mysql


Ответы (1 шт):

Автор решения: Softovick
  1. Если задача использовать только SQL - то подойдет любое приложение для выполнения SQL-скриптов. Phphmyadmin не хуже не лучше других ,как вариант Adminer, но он попроще конечно. Есть еще GUI-программы типа DBeaver, HeidiSQL, в них тоже можно.
  2. Нуууу....

2.1. В таблицу a_product нужно добавить колонку с рубрикой, которую связать с таблицей a_category. В простейшем виде этого достаточно, чтобы у продукта была одна категория, более сложно надеюсь не требуется.

2.2. В таблице a_category добавьте колонку родителя. И связывайте ее с ид рубрики из этой же таблицы. Если в колонке null, то значит категория родительская, верхнего самого уровня. Если не null, то значит указано должно быть id категории, которая для этой является родительской. Уровень вложенности неограничен, самое простое решение ,которое мне пришло на ум.

  1. Это такой вопрос :) Вообще документация, например https://mariadb.com/kb/ru/sql/ , гугл... И книги может, есть разные, они почти все дают какое-то понимание, что и как работает.
→ Ссылка