-1

Just looking at a video about 1NF (from Mr B's Code Academy) and I'm left wondering how one would normalise the data in the screenshot, so it becomes atomic. In the video, Mr B splits Teacher into three columns - Teacher ID, Teacher Init, and Teacher Surname.

I understand completely splitting the data into two columns, one for ID and one for name, but is reducing it down further to the initials and surname a bit much or is it necessary?

Screenshot: The column for a teacher's name with ID

philipxy
  • 14,867
  • 6
  • 39
  • 83
regexted
  • 13
  • 4
  • Give the definition of "1NF" you are using. How is it that that doesn't tell you what to do? If you don't say how you are stuck then you are just asking us for yet another presentationwith no idea of what you misunderstand or don't understand or do. PS Basic questions are SO faqs. – philipxy Feb 07 '22 at 21:07
  • Please [use text, not images/links, for text--including tables & ERDs](https://meta.stackoverflow.com/q/285551/3404097). Paraphrase or quote from other text. Give just what you need & relate it to your problem. Use images only for what cannot be expressed as text or to augment text. Include a legend/key & explanation with an image. Make your post self-contained. [ask] [Help] Especially don't expect us to watch a video. – philipxy Feb 07 '22 at 21:08
  • Does this answer your question? [Normalization in database management system](https://stackoverflow.com/questions/40623169/normalization-in-database-management-system) – philipxy Feb 07 '22 at 21:36
  • At the 1st random normalization video I went to at that site the starting image contains wrong things. PS Follow a published academic textbook on information modelling, the relational model & DB design & querying. (Manuals for languages & tools to record & use designs are not such textbooks.) (Nor are wiki articles or web posts.) Dozens are online free in pdf & html. (Check out at least a few because presentations of the relational model & especially normalization can be poor.) – philipxy Feb 07 '22 at 21:57

1 Answers1

-1

I would say that the data needs to be atomic, so a single table, with a unique ID column as a Primary Key, a first name (or initial) column, and finally a column for the surname.

As all data is then dependent on the primary key it should also meet 2NF and 3NF.

Yes - it is necessary to store the firstname / initial in a separate column.

Ed James
  • 1
  • 1
  • A practical reason for this is that if you store the initial and surname in the same field, then you can't easily search or order by surname as the initial would interfere with the search / ordering. – Ed James Feb 07 '22 at 19:57
  • Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Feb 08 '22 at 05:11