0% found this document useful (0 votes)
46 views19 pages

Chapter 2: Intro To Relational Model

The document provides an overview of the relational model for databases including: - Relations consist of attributes (columns) and tuples (rows) that make up a table. Attributes have domains and can allow null values. - Relations schemas define the attributes of a relation. Relation instances are the current data values stored in a table. Relations are unordered sets of tuples. - Keys like candidate keys and primary keys uniquely identify tuples. Foreign keys enforce relationships between relations. - Relational algebra uses operators like selection, projection, join, union, difference, and intersection to manipulate relations. - Relations can be joined using a cartesian product or natural join based on matching attribute values.

Uploaded by

Phấn Lê
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views19 pages

Chapter 2: Intro To Relational Model

The document provides an overview of the relational model for databases including: - Relations consist of attributes (columns) and tuples (rows) that make up a table. Attributes have domains and can allow null values. - Relations schemas define the attributes of a relation. Relation instances are the current data values stored in a table. Relations are unordered sets of tuples. - Keys like candidate keys and primary keys uniquely identify tuples. Foreign keys enforce relationships between relations. - Relational algebra uses operators like selection, projection, join, union, difference, and intersection to manipulate relations. - Relations can be joined using a cartesian product or natural join based on matching attribute values.

Uploaded by

Phấn Lê
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 19

Chapter 2: Intro to

Relational Model
Example of a Relation
attributes
(or columns)

tuples
(or rows)
Attribute Types
• The set of allowed values for each attribute is called the
domain of the attribute
• Attribute values are (normally) required to be atomic; that is,
indivisible
• The special value null is a member of every domain
• The null value causes complications in the definition of many
operations
Relation Schema and Instance
• A1, A2, …, An are attributes
• R=(A1, A2, …, An ), Q(R) is a relation schema
Example:
instructor(ID, name, dept_name, salary)
• Formally, given sets D1, D2, …. Dn a relation r is a subset of
D1 x D2 x … x Dn
Thus, a relation is a set of n-tuples (a1, a2, …, an) where each ai  Di

 The current values (relation instance) of a relation are


specified by a table
 An element t of r is a tuple, represented by a row in a table
Relations are Unordered
 Order of tuples is irrelevant (tuples may be stored
in an arbitrary order)
 Example: instructor relation with unordered
tuples
Database
• A database consists of multiple relations
• Information about an enterprise is broken up into parts
instructor
student
advisor

• Bad design:
univ (instructor-ID, name, dept_name, salary, student_Id, …)
results in
• repetition of information (e.g., two students have the same instructor)
• the need for null values (e.g., represent an student with no advisor)
• Normalization theory deals with how to design “good” relational
schemas
Keys
• Let K  R=(A1, A2, …, An )
• K is a superkey of R if values for K are sufficient to identify a unique
tuple of each possible relation r(R)
• Example: {ID} and {ID,name} are both superkeys of instructor.
• Superkey K is a candidate key if K is minimal
Example: {ID} is a candidate key for Instructor
• One of the candidate keys is selected to be the primary key.
• which one?
• Foreign key constraint: Value in one relation must appear in
another
• Referencing relation
• Referenced relation
Schema Diagram for University Database
Relational Query Languages
• Procedural vs. non-procedural, or declarative
• “Pure” languages:
• Relational algebra
• Tuple relational calculus
• Domain relational calculus
• Relational operators
Selection of tuples
 Relation r

 Select tuples with A=B and D


>5
σ A=B and D > 5 (r)
Selection of Columns (Attributes)

• Relation r:

 Select A and C
 Projection
Π A, C (r)
Joining two relations –
Cartesian Product
 Relations r, s:

 r x s:
Union of two relations
• Relations r, s:

 r  s:
Set difference of two relations

• Relations r, s:

 r – s:
Set Intersection of two relations

• Relation r, s:

•r  s
Joining two relations – Natural
Join
• Let r and s be relations on schemas R and S respectively.
Then, the “natural join” of relations R and S is a relation
on schema R  S obtained as follows:
• Consider each pair of tuples tr from r and ts from s.
• If tr and ts have the same value on each of the attributes in R  S,
add a tuple t to the result, where
• t has the same value as tr on r
• t has the same value as ts on s
Natural Join Example
• Relations r, s:

 Natural Join
r s
Figure in-2.1
End of Chapter 2

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy