First normal form: Difference between revisions

Content deleted Content added
m Correct verb conjugation
Added some citations
Line 8:
==Overview==
{{no sources section|date=November 2024}}
In a [[hierarchical database]], a record can contain sets of child records ― known as repeating groups or table-valued attributes. If such a data model is represented as relations, a repeating group would be an attribute where the value is itself a relation. First normal form eliminates nested relations by turning them into separate "top-level" relations associated with the parent row through foreign keys rather than through direct containment.<ref>Codd, E.F (1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM. Classics. 13 (6): 377–87. p. 380-381</ref>
 
The purpose of this normalization is to increase flexibility and [[data independence]], and to simplify the data language.<ref>Codd, E.F (1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM. Classics. 13 (6): 377–87. p. 380-381</ref> It also opens the door to further normalization, which eliminates redundancy and anomalies.<ref>Codd, E. F. (1971). Further Normalization of the Relational Model. Courant Computer Science Symposium 6 in Data Base Systems edited by Rustin, R.</ref>
 
Most relational database management systems do not support nested records, so tables are in first normal form by default. In particular, [[SQL]] does not have any facilities for creating or exploiting nested tables. Normalization to first normal form would therefore be a necessary step when moving data from a hierarchical database to a relational database.