Database Management System Lecture 14 Logical Database Design
Database Management System Lecture - 14
Logical Database Design
Introduction to Relational Data Model
Two Major Strengths ØSimplicity ØStrong Mathematical Foundation
Relational Data Model ØPresented by E. F. Codd in 1970, then of IBM ØBefore Relational Data Model, two older data models were in use; Hierarchical, Network
Relational Data Model ØFirst DBMS built on Relational Data Model (RDM) was system R ØAnother Relational DBMS built during those days was INGRES
Basic of RDM ØRDM used mainly for external, conceptual, and to some extent physical schema ØSeparation of conceptual and physical levels makes manipulation much easier, contrary to previous data models
Basic of RDM ØRDM used for external, conceptual, and to some extent physical schema ØThe basic structure is relation ØBoth entities and relationships are modeled using tables/relations
Basics of RDM ØRelations physically represented as tables ØTable is a two dimensional representation of a relation ØConsists of rows and columns
Basics of RDM ØColumns represent attributes and rows represent records ØRows, records and tuples all these terms are used interchangeably
Basic Properties of a Table 1. Each cell of a table contains atomic/single value 2. Each column has a distinct name; the name of the attribute it represents
Basic Properties of a Table 3. The values of the attributes come from the same domain 4. The order of the columns is immaterial
Basic Properties of a Table 5. The order of the rows is immaterial 6. Each row/tuple/record is distinct, no two rows can be same
A table st. ID st. Name cl. Name do. B sex S 001 M. Suhail 12/6/84 M S 002 M. Shahid BCS 3/9/86 M S 003 Naila S. MCS 7/8/85 F S 004 Rubab A. MBA 23/4/86 F S 005 Ehsan M. BBA 22/7/88 M MCS
Components of RDM Ø As discussed in data model definition 1. Structure (relation/table) 2. Manipulation language (SQL) 3. Integrity constraints (Two)
Mathematical Relations ØConsider two sets Ø A = {x, y} B = {2, 4, 6} Ø Cartesian product of these sets Ø A X B= {(x, 2), (x, 4), (x, 6), (y, 2), (y, 4), (y, 6)}
Mathematical Relations ØA relation is some subset of this Cartesian product, For example, Ø R 1= {(x, 2), (y, 2), (x, 6), (x, 4)} Ø R 2 = {(x, 4), (y, 6), (y, 4)}
Mathematical Relations The same notion of Cartesian product and relations can be applied to more than two sets, e. g. in case of three sets, we will have a relation of ordered triplets
Database Relations ØThinking in some real world scenario § Name = {Ali, Sana, Ahmed, Sara} § Age = {15, 16, 17, 18, ……. , 25}
Database Relations Cartesian product of Name & Age Name X Age= {(Ali, 15), (Sana, 15), (Ahmed, 15), (Sara, 15), …. , (Ahmed, 25), (Sara, 25)} CLASS = {(Ali, 18), (Sana, 17), (Ali, 20), (Ahmed, 19)}
Database Relations ØLet A 1, A 2, A 3, …, An be some attributes and D 1, D 2, D 3, …, Dn be their domains ØA relation scheme relates certain attributes with their domain in context of a relation
Relation Scheme Can be represented as R = (A 1: D 1, A 2: D 2, ……, An: Dn) STD = (st. Id: Text, st. Name: text, st. Adres: Text, do. B: Date) OR STD(st. Id, st. Name, st. Adres, do. B)
Database Relations According to this scheme we can have a relation (instance of this scheme), like STD={(st. Id: S 001, st. Name: Ali, st. Adres: Lahore, do. B: 12/12/76), (st. Id: S 003, st. Name: A. Rehman, st. Adres: RWP, do. B: 2/12/77)}
Database Relations STD={(S 001, Ali, Lahore, 12/12/76), (S 003, A. Rehman, RWP, 2/12/77)} st. Id st. Name S 001 Ali st. Adres do. B Lahore S 002 A. Rehman RWP 12/12/76 2/12/77
- Slides: 24