@ganbatte

Как начинающему веб программисту, правильно начать проектировать базы данных?

Я начинающий веб программист, делаю сайты на PHP с помощью Laravel. Но мне бывает трудно, с проектированием базы данных, в связи с тем что у меня вообще нету опыта проектировать базы данных, и образование у меня совсем левое. Сейчас использую БД Mysql. Меня конкретно интересует вопрос, есть ли какая нибудь книга, которая именно описывает проектирование БД, или же структуру в той или иной задачи. Например, я делаю сайт инвентаризации. И тогда я делаю таблицу, где хранятся эти вещи с инвентарными номерами, а как реализовать перемещение этих вещей. Создать другую таблицу и хранить перемещение этих вещей ? Я сейчас делаю сайт или лучше назвать приложение, которая введет базу данных для книжного издательства, и там вообще куча информации, в одном таблице будет около 500 столбцов, там есть высота ширина книги, и вообще куча информации, кто был художником итп. Я хочу делать это приложение, но как будто иду в слепую, и очень часто переписываю то что делал, и это касается и проектирования БД, мне нужно какая то книга по БД. Я искал такие книги, но они очень мудреные, а мне нужно все го лишь проектирование...
  • Вопрос задан
  • 196 просмотров
Пригласить эксперта
Ответы на вопрос 3
bingo347
@bingo347
Crazy on performance...
1. Почитайте про 5 нормальных форм реляционных БД
В реальной жизни достаточно придерживаться 3НФ (которая включает 1 и 2), но знать стоит все 5
2. Почитайте про индексы и ключи, особенно про составные индексы. Поймите на базовом уровне как работают основные: BTree, HashMap, полнотекстовый поиск, фильтр Блума. Так же можете глянуть про Foreign Key (хоть, если память не изменяет, MySQL его и не умеет)
3. Почитайте про особенность работы доступных движков СУБД. Стоит разбираться, что лучше подходит для записи, а что для чтения.
Ответ написан
Комментировать
Классика же! :-)
Ответ написан
Комментировать
@immelnikoff
Изучаю БД
Стандартная ситуация, когда полностью отсутствует теоретическая база. Чтобы перестать чувствовать себя слепым котенком, нужно ликвидировать этот пробел. Нужно начать с самых основ – понятие отношения (как ни странно, оно не имеет ничего общего со связями между таблицами), ключи, нормальные формы. Вы должны выучить и понять все 7 нормальных форм и уметь самостоятельно сконструировать таблицу в n-й НФ, но не в n+1-й НФ. А в качестве отдыха следует устранить пробелы в теории множеств, математической логике и системах счисления. Не нужно браться за университетские монографии – это бессмысленно. Вполне достаточно ограничиться школьным курсом математики и информатики. Это может показаться сложным и скучным занятием, но если вы сможете это перетерпеть, то потом наступит облегчение и вы сами удивитесь насколько все логично и упорядочено.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы