0% found this document useful (0 votes)
8 views

Lecture 5

This lecture covers the relational model of databases, proposed by E.F. Codd in 1970, emphasizing its objectives such as data independence and handling data semantics. It defines key terminology including relations, attributes, domains, and tuples, while explaining the mathematical foundations of relations through Cartesian products. Additionally, it outlines properties of relations and provides examples of relational database management systems (RDBMS).

Uploaded by

hammad khalid
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Lecture 5

This lecture covers the relational model of databases, proposed by E.F. Codd in 1970, emphasizing its objectives such as data independence and handling data semantics. It defines key terminology including relations, attributes, domains, and tuples, while explaining the mathematical foundations of relations through Cartesian products. Additionally, it outlines properties of relations and provides examples of relational database management systems (RDBMS).

Uploaded by

hammad khalid
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 24

Database Systems

Lecture # 5
Summary: Previous Lecture
 Database languages
 Functions of a DBMS
 DBMS environment
 Data models and their categories
The Relational Model
Chapter 3
History of Relational Model
 Proposed by E.F. Codd in 1970
 “ A relational model of data for large shared data banks”
 Objectives of relational model
 High degree of data independence
 Dealing with issues e.g. data semantics, consistencies, and
redundancy
 To enable the expansion of set-oriented data manipulation
languages
Examples of RDBMSs
 Oracle
 Microsoft SQLServer
 Microsoft Access
 Visual FoxPro
 InterBase
 JDataStore
 R:Base
Relational Model
 Based on mathematical concept of a
relation
 Which is physically represented as a table
 Codd, a trained mathematician, used
terminology taken from mathematics,
principally set theory and predicate logic
Relational Model Terminology
 A relation is a table with columns and rows
 Only applies to logical structure of the database (external
and conceptual level of ANSI-SPARC architecture), not
the physical structure
 Attributeis a named column of a relation
 Domain is the set of allowable values for
one or more attributes
Relational Model Terminology..
 Tuple is a row of a relation
 Degree is the number of attributes in a
relation
 Cardinality is the number of tuples in a
relation
 Relational Database is a collection of
normalized relations with distinct relation
names
Instances of Sample Relations
Examples of Attribute Domains
Alternative Terminology
Mathematical Relations
 Consider two sets, D1 & D2,
 Where D1 = {2, 4} and D2 = {1, 3, 5}
 Cartesian product, D1 x D2 is,
 Set of all ordered pairs, where first element is member of
D1 and second element is member of D2
 D1 x D2 = {(2, 1), (2, 3), (2, 5), (4, 1), (4, 3), (4, 5)}
 Alternative way is to find all combinations of elements
with first from D1 and second from D2
Mathematical Relations..
 Any subset of Cartesian product is a
relation; e.g.
 R = {(2, 1), (4, 1)}
 May specify which pairs are in relation using some
condition for selection; e.g.
 Second element is 1:
 R = {(x, y) | x  D1, y  D2, and y = 1}
 First element is always twice the second:
 S = {(x, y) | x  D1, y  D2, and x = 2y}
Mathematical Relations..
 Relating with database relations
 Consider Branch relation in the example where
branchNo = {B002,B003} city = {London, Glasgow}
 Cartesian product, branchNo x city is,
{(B002, London), (B002, Glasgow), (B003, London), (B003, Glasgow)}
 Any subset of Cartesian product is a
relation
Mathematical Relations..
 Consider three sets D1, D2, D3 with
Cartesian Product D1 x D2 x D3, e.g.
 D1 = {1, 3} D2 = {2, 4} D3 = {5, 6}
 D1 x D2 x D3 =
{(1,2,5), (1,2,6), (1,4,5), (1,4,6), (3,2,5), (3,2,6), (3,4,5), (3,4,6)}
 Any subset of these ordered triples is a relation
Mathematical Relations..
 Cartesian product of n sets (D1, D2,…, Dn)
is:
 D1 x D2 x . . . x Dn = {(d1, d2, . . . , dn) | d1  D1, d2  D2,
. . . , dn  Dn}
 Usually written as:

n
XDi
i=1
 Any set of n-tuples from this Cartesian product is a
relation on the n sets
Database Relations
 Relation schema
 Named relation defined by a set of attribute and domain
name pairs
 Let A1, A2,...,An be attributes with domains D1, D2,..., Dn
 Then the set {A1:D1, A2:D2, ... , An:Dn} is a relation
schema
 A relation R defined by a relation schema S is a set of
mappings from the attribute names to their
corresponding domains. Thus, relation R is a set of n-
tuples:
 (A1:d1, A2:d2,..., An:dn) such that
 d1∈D1, d2∈D2,..., dn∈Dn
Database Relations
 Relation schema
 Named relation defined by a set of attribute and domain
name pairs
 Let A1, A2,...,An be attributes with domains D1, D2,..., Dn
 Then the set {A1:D1, A2:D2, ... , An:Dn} is a relation
schema
 A relation R defined by a relation schema S is a set of
mappings from the attribute names to their
corresponding domains. Thus, relation R is a set of n-
tuples:
 (A1:d1, A2:d2,..., An:dn) such that
 d1∈D1, d2∈D2,..., dn∈Dn
Database Relations..
 Branch relation schema
 Branch =
{branchNo:BranchNumbers, street: StreetNames, city: CityNames, postcode:PostCodes}
 Tuple of a Branch relation
{branchNo:B005, street: 22 Deer Rd, city: London, postcode:SW1 4EH}
Relational Database Schema
 If R1, R2,..., Rn are a set of relation
schemas, then we can write the relational
database schema, or simply relational
schema, R, as:

R= {R1, R2,..., Rn}


Properties of Relations
 Relation name is distinct from all other
relation names in relational schema
 Each cell of relation contains exactly one
atomic (single) value
 Each attribute has a distinct name
 Values of an attribute are all from the same
domain
Properties of Relations..
 Each tuple is distinct; there are no duplicate
tuples
 Order of attributes has no significance
 Order of tuples has no significance,
theoretically
Summary
 Relational model terminology
 Mathematical relations
 Database relations
 Properties of a relation
References
 All the material (slides, diagrams etc.)
presented in this lecture is taken (with
modifications) from the Pearson Education
website :
 http://www.booksites.net/connbegg

You might also like