Мне нужно нормализовать свою базу данных до BCNF, но меня немного смущает 1NF.
Моя основная таблица посвящена видеоиграм, и она выглядит так:
game_id(PK, AI) title developer_id(FK) publisher_id(FK) genre modes release_date
1 XYZ 3 5 FPS, Battle Royale Single-player, multiplayer 2019-02-04
Меня беспокоят столбцы "режимы" и "жанр", потому что иногда у меня есть несколько значений, так что это не atomi c, верно? В этом комментарии говорится то же самое Объясните, что мне пять -> Как первичный ключ соответствует первой нормальной форме НО в комментарии прямо под ним говорится об обратном ...
Я читал о нормализации и я нашел этот пример таблицы в 1NF. Оглядываясь на свою таблицу, я понял, что не могу сделать то же самое, потому что у меня есть «id», который является PK, поэтому у него не может быть повторяющихся значений. Другие источники говорят, что если у вас есть ПК, это означает, что таблица находится в 1NF, потому что все строки разные.
Я думаю о создании еще двух таблиц, где я храню только «режимы», которые (Single -player / Multiplayer / Single-player, multiplayer) и «жанры». Но как мне вставить 'mode_id' в качестве FK в таблицу 'game', если, опять же, у игры есть только один 'id', который также является PK? ? А для NF3 я должен создать еще две таблицы, в которых я храню отношения nm между режимами игр и жанрами игр ...
Я был бы рад, если бы кто-нибудь захотел просмотреть всю мою базу данных (она маленькая и просто) и скажите, где мне применить нормализацию. Спасибо!