Relation Model

Reading Time: < 1 minute
  1. Relation – A table with columns and rows.
  2. Attribute – A named column of a relation.
  3. Domain – The set of allowable values for one or more attributes.
  4. Tuple – A row of a relation.
  5. Intension – The structure of a relation (i.e. its attributes), together with a specification of the domains and any other restrictions on possible values. The structure of a relation is usually fixed (the intension is static).
  6. Extension – (or state) The tuples of a relation. The number of tuples in a relation, and their attribute values, change over time (the extension is dynamic).
  7. Degree – The number of attributes the relation contains.
  8. Cardinality – The number of tuples the relation contains.
  9. Relational database – A collection of normalized relations with distinct relation names.

A relation is a table with columns and rows; a relation schema is a named relation defined by a set of attribute and domain name pairs. A relational database schema is a set of relation schemas, each with a distinct name.

A relation has the following properties:

  • has a name that is distinct from all other relation names in the relational schema;
  • each cell contains exactly one atomic (single) value;
  • each attribute has a distinct name;
  • the values of an attribute are all from the same domain;
  • each tuple is distinct; there are no duplicate tuples;
  • the order of attributes has no significance;
  • the order of tuples has no significance, theoretically.