Database Management System (DBMS) / Relational Model

Properties of Relation/Table in Relational Model

Properties of a Relation

πŸ“Œ Relation Names Must Be Unique

  • Every table in a database needs its own distinct name.

  • You can't have two separate tables both called Student in the same schema.


πŸ“Œ Attribute Names Must Be Unique Within a Table

  • No two columns in the same table can share a name.

  • A Student table can't have two different columns both labeled Name.


πŸ“Œ Tuples (Rows) Cannot Repeat

  • Every row in a table has to be distinct β€” no exact duplicates allowed.

  • This is typically enforced through a primary key.

βœ… Example:

βœ”οΈ (101, "Alice", 20)
βœ”οΈ (102, "Bob", 21)
❌ (101, "Alice", 20)  ← Exact duplicate of the first row β€” not allowed

πŸ“Œ Row Order Is Irrelevant

  • A table is a set of rows, not a list β€” there's no inherent "first" or "last."

  • Rearranging rows doesn't change what the relation represents.


πŸ“Œ Column Order Is Irrelevant

  • Where a column sits doesn't affect the table's meaning.

  • (ID, Name, Age) describes the same relation as (Name, Age, ID).


πŸ“Œ Every Value Must Be Atomic

  • Each cell can hold exactly one indivisible value β€” never a list or set.

  • This requirement is what defines First Normal Form (1NF).

❌ Not allowed: Subjects = {"Math", "Science"} βœ… Correct: Subject = "Math"


πŸ“Œ A Column's Values Share One Domain

  • Every entry in a column must come from the same data type or value set.

  • An Age column should only ever hold integers like 18 or 21 β€” never text like "twenty".


πŸ“Œ NULLs Are Permitted

  • A relation can store NULL when a value is unknown or doesn't apply.

  • That said, leaning on NULLs too heavily undermines data integrity β€” use them sparingly.