<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Нормальные формы баз данных.

Нормальные формы баз данных.

Привет всем, и сегодня мы поговорим о том, что такое нормальные формы и как их правильно использовать.

Нормальные формы - это правила, которые должны соблюдаться при правильной проектировке базы данных.

Нормальных форм существует целых 6 штук, однако обычно соблюдают всего лишь 3 и этого более чем достаточно. Вот давайте их и разберем.

Первая нормальная форма

Чтобы была соблюдена первая форма, все данные в полях должны быть атомарны. Т.е. одно поле - одно значение.

Представим, например, что у нас есть таблица с учителями. Там есть поле "уроки", куда записываются те уроки, которые ведет данный учитель. У одного учителя может быть сразу несколько уроков, верно? И вы могли подумать, а почему бы не записывать их через запятую?

математика, русский

Но так ни в коем случае делать не стоит, ибо вы нарушите первую нормальную форму и выбирать данные будет не очень удобно, правда?

Чтобы это исправить, вы должны создать 2 записи с одним и тем же учителем.

1) Чемоданчиков математика
2) Чемоданчиков русский

Поздравляю! Первая нормальная форма выполнена. Давайте перейдем ко второй.

Вторая нормальная форма

Во-первых, ваша таблица уже должна быть в первой нормальной форме. Во-вторых, в вашей таблице обязательно должен быть первичный ключ и все записи должны от него зависеть. Те данные, которые не зависят от данного ключа, должны быть вынесены в отдельную таблицу-справочник.

Например, все тот же пример с учителями. Учителя и уроки - две разные таблицы, а не одна. Вы должны создать поля id, урок, учитель в первой таблице с уроками и создать вторую таблицу с учителями, где будут, например, поля id, имя, фамилия.

Таблица с уроками

id Lesson Teacher

Таблица с учителями

id Name Second name

Теперь заполним таблицу с учителями

id Name Second name
1 Сергей Чемоданчиков
2 Игорь Карапузиков
3 Петр Первый

Вот такие учителя работают у нас. Теперь перейдем к таблице с уроками

id Lesson Teacher
1 математика 1
2 русский 1
3 литература 3

Как вы, наверное, заметили, мы в поле teacher написали id со второй таблицы с уроками. Теперь, если нам нужно будет изменить имя или фамилию у учителя, нам нужно будет изменить данные всего в одном месте.

Итак, чтобы была соблюдена вторая форма, вы должны везде иметь первичный ключ и выносить записи, которые не зависят от первичного ключа в другие таблицы - справочники.

Поздравляю! Мы разобрались со второй нормальной формой. Перейдем к третьей, заключительной.

Третья нормальная форма

Для начала ваша таблица должна быть в первой и второй нормальной форме.

Чтобы была соблюдена третья нормальная форма, у вас не должно быть транзитивной зависимости.

Например, у нас есть таблица с такими полями

  • Город
  • Адрес
  • Индекс

Здесь у нас явно прослеживается транзитивная зависимость. Зачем нам поле город, если у нас есть индекс? По индексу мы можем понять, что за город.

Итак, мы разобрались с тремя наиболее важными нормальными формами. Следите, чтобы ваши таблицы всегда были в этих формах. Удачного проектирования баз данных! :)

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.