Logical Data Models and Languages > Relational Data Model > Definition
Relational model is based on set theory. Main concepts of the relational model are:
- Domain: a set of values for a simple attribute
- Relation: cross-product of a set of domains
- Relations are tables, i.e., homogeneous collection of rows (tuples)
- The set of columns (i.e., attributes) is the same for each row
- Comparison with concepts in the Entity-Relation (ER) conceptual data model:
- Relations are similar to but not identical to entities
- Domains are similar to attributes
- Translation rules establishing exact correspondence
- Relational model restricts attribute domains
- simple atomic values
- complex values for columns are not allowed
- complex values are decomposed into simpler domains
- From ER to Relational model
- Entities become relations
- Attributes become columns in the relation
- Multi-valued attributes become a new relation, which includes foreign key that links attributes to the entity
- Relations (1:1, 1:N) become foreign keys
- Relations M:N become relations, which contain foreign keys or relations from participating entities