Сделать в первую нормальную форму - PullRequest
0 голосов
/ 01 апреля 2019

Учитывая следующее соотношение:

school =(teacherID, list of kids)

Мне нужно преобразовать это в первую нормальную форму.Я думал, что у меня есть одна таблица для teacherID, а затем таблица для детей, и у каждого ребенка есть kidID.Затем я мог подключить каждый kidID к их правильному идентификатору учителя.Это решило бы проблему 1NF?

Ответы [ 2 ]

0 голосов
/ 01 апреля 2019

Чтобы удовлетворить 1NF, вам нужно иметь только атомарные поля данных, чтобы информация столбца не могла быть разделена на две части.

Например, если вы храните информацию учителя (teacherid,имя) это не будет первая нормальная форма, потому что вы можете разделить имя на имя и фамилию.

Список детей в одном поле не является атомарным, поэтому придется разделить его на несколько записей.Таким образом, вам нужно иметь одну запись для каждого ребенка, например (teacherID, kid1ID), (teacherID, kid2ID), ...

0 голосов
/ 01 апреля 2019

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

Если по какой-либо причине вы только хотели, чтобы это было в 1-й нормальной форме, вы 'Я просто хочу, чтобы не было ячеек, содержащих более одного элемента данных.В этом случае достаточно было бы превратить список детей в столбец, и для каждого ребенка будет достаточно идентификатора учителя.

...