From Database System Concepts, by Silberschatz, Korth and Sudarshan :
A domain is atomic if elements of the domain are considered to be indivisible units. We say that a relation schema
R
is in first normal form (1NF) if the domains of all attributes ofR
are atomic.
From https://stackoverflow.com/a/724032/156458
1NF is the most basic of normal forms - each cell in a table must contain only one piece of information, and there can be no duplicate rows.
If I am correct, "there can be no duplicate rows" in the second definition means exactly that there must exist at least one candidate key in the relation schema.
I wonder if the two definitions of 1NF above are the same?
In particular, is it correct that "there can be no duplicate rows" can't be implied by "the domains of all attributes of R
are atomic"?
Thanks.
Updated:
This book seems to say that having a primary key implies atomic and is it correct?
In first normal form (INF), related attributes are organized into separate tables, each with a primary key. A primary key is an attribute or set of attributes that uniquely defines a tuple. Thus, if a table is in INF, entities within the data model contain no attributes that repeat as groups. W. Kent has explained that in INF, all occurrences of a record must contain the same number of fields. In INF, each data cell (defined by a specific tuple and attribute) in the table will contain only atomic values.