[TC] Работа с MYSQL
Здравствуйте, industry.
Есть задача, составление рассписания для университета.
Предполагается, что вс инфа должна храниться в таблицах бд MYSQL.
В связи с этим возникают вопросы.
Делов том, что групп для которых содздается рассписание много.
И если допустим заполнять таблицу примерно так:
день недели, перечисление предметов, указание фамилии преподавателя и
пр. то получается, что для например 100 групп приходится множество раз
повторять например понедельник.
То же самое с фамилиями преподавателей, тоже самое с названиями
предметов.
Существует ли возможность как-то всё это рационализировать?
например создать таблици с перечислениями всех предметов всех фамилий
преподавателей всех дней и саму таблицу рассписание создать как-то
ввиде каких-нибудь ссылок или может быть возможно использовать
какие-то связки таблиц.
Или может быть всё это можно реализовать как-нибудь совсем иначе?
Буду очень благодарен за информацию на этот счет!
Приветствую всех.
Возникшие у вас вопросы не относятся напрямую к mysql, а относятся к понятию
"реляционная база данных" и языку запросов SQL.
Поэтому имеет смысл почитать соответствующую литературу, прежде чем приступать
к проектированию баз данных.
Этот процесс называется нормализацией базы данных. Если хотите познакомиться
поближе, то начните с google: "нормальная форма".
Сами SQL-таблицы связей не хранят, то есть связывание таблиц происходит непосредственно
в SQL-запросе (например, SELECT и т.п.).
В языке SQL (который поддерживает mysql) для связывания таблиц используется ключевое
слово JOIN:
http://mysql.ru/docs/man/JOIN.html
Дни недели, список предметов, преподаватели, группы студентов -- это четыре разных
таблицы, которые вы будете связывать с таблицей "расписание" в запросе SELECT.
Успехов. Анатолий.