Fundamentals of Relational Databases in CSCE 315 - Lecture Highlights

undefined
RELATIONAL DATABASES
CSCE 315, SPRING 2019
PROJECT 1, LECTURE 2
ROBERT LIGHTFOOT
Slides adapted from those used by
Jeffrey Ullman, via Jennifer Welch
RELATIONAL DATA MODEL
Relations and Entities are stored in Tables
e.g. Sponsor (Senator, Bill)
Atrributes
Tuples
SCHEMAS
A 
relation schema
 (aka Table schema) is a 
relation
name 
and a
 list of attributes
Sponsor(Senator,Bill)
A 
database
 is a collection  of relations
A 
database schema
 is the set of 
all 
the relation
schemas in the database
Remember, Relation 
 Table
CONVERTING FROM ENTITY-
RELATIONSHIP MODEL
ER: Entity set -> relation
ER Attributes become Relational attributes
ER: Relationship -> relation
Keys of connected ER entity sets become Relational attributes
ER ENTITY SETS
 
Senator
Name
State
Party
Years
Name
Text
Bill
Name
Organization
Lobbyist
RELATIONS
Senator(Name,Party,State,Years)
Bill(Name,Text)
Lobbyist(Name,Organization)
ER RELATIONSHIPS
 
Senator
Name
State
Party
Years
Name
Text
Bill
Sponsored
Name
Organization
Lobbyist
Wrote
Contributed
RELATIONS
Sponsored(Senator,Bill)
Wrote(Bill,Lobbyist)
Contributed(Senator,Lobbyist)
Remember, each of these is expressed as a table
with the columns given by the “atributes”
COMBINING RELATIONS
Relations can sometimes be combined.
Assume a “base” entity set with its relation.
If there is a many-to-one relation, then it can be
combined with the base entity set.
Should 
not
 combine many-to-many
Would cause redundancy – each of the many stored
COMBINING RELATIONS
Example (many-to-one):   (Good)
Person
(Name, Birthdate, Height, Weight, Eye Color, Hair Color)
BornIn
(Person,Town)
Combined
: 
Person
(Name, Birthdate, Height, Weight, Eye Color,
Hair Color, Town)
Only one Town per Person
Example(many-to-many):   (Bad)
Senator
(Name, Party, State, Years)
Sponsored
(Senator, Bill)
Combined:
 
Senator
(Name, Party, State, Years, Bill)
Many Bills per Senator
WEAK ENTITY SETS
The relation for a weak entity set must contain all the
elements of its key
Supporting relationships are usually redundant (unless
possibly multi-way)
WEAK ENTITY SET EXAMPLE
 
Baseball Player
First
Name
Last
Name
Number
Position
Nationality
Salary
Birthdate
Name
Team
Plays
On
City
Note arrrow:
indicates many
to one.
WEAK ENTITY SET EXAMPLE
Team(
Name
, City)
Baseball Player(
Number
, 
TeamName
, First Name, Last
Name, Position, Birthdate, Nationality, Salary)
WEAK ENTITY SET EXAMPLE
Team(
Name
, City)
Baseball Player(
Number
, 
TeamName
, First Name, Last
Name, Position, Birthdate, Nationality, Salary)
Note that we don’t need PlaysOn(BaseballPlayer.Number,
BaseballPlayer.TeamName, Team.Name)
WEAK ENTITY SET EXAMPLE
Team(
Name
, City)
Baseball Player(
Number
, 
TeamName
, First Name, Last
Name, Position, Birthdate, Nationality, Salary)
Note that we don’t need PlaysOn(BaseballPlayer.Number,
BaseballPlayer.TeamName, Team.Name)
Redundant (same)
WEAK ENTITY SET EXAMPLE
Team(
Name
, City)
Baseball Player(
Number
, 
TeamName
, First Name, Last
Name, Position, Birthdate, Nationality, Salary)
Note that we don’t need PlaysOn(BaseballPlayer.Number,
BaseballPlayer.Team.Name)
WEAK ENTITY SET EXAMPLE
Team(
Name
, City)
Baseball Player(
Number
, 
TeamName
, First Name, Last
Name, Position, Birthdate, Nationality, Salary)
Note that we don’t need PlaysOn(BaseballPlayer.Number,
BaseballPlayer.Team.Name)
Already
Included
KEYS
A Key “functionally determines” all other attributes of the
relation
Given a relation and a key, there is only one tuple that
corresponds to it
There are subtle differences from an E-R key, which we
won’t go into.
Slide Note
Embed
Share

Introduction to relational databases covering topics such as relational data model, schemas, converting from entity-relationship model, entity sets, relations, relationships, combining relations, and practical examples. Learn about storing data in tables, attributes, database organization, and the importance of maintaining data integrity.

  • Database Management
  • Relational Model
  • Entity-Relationship
  • Data Storage
  • Schema Design

Uploaded on Sep 16, 2024 | 1 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. RELATIONAL DATABASES CSCE 315, SPRING 2019 PROJECT 1, LECTURE 2 ROBERT LIGHTFOOT Slides adapted from those used by Jeffrey Ullman, via Jennifer Welch

  2. RELATIONAL DATA MODEL Relations and Entities are stored in Tables e.g. Sponsor (Senator, Bill) Atrributes Sponsor Senator Smith Jones Smith Adams Bill Tax Defense Defense Commerce Tuples

  3. SCHEMAS A relation schema (aka Table schema) is a relation name and a list of attributes Sponsor(Senator,Bill) A database is a collection of relations A database schema is the set of all the relation schemas in the database Remember, Relation Table

  4. CONVERTING FROM ENTITY- RELATIONSHIP MODEL ER: Entity set -> relation ER Attributes become Relational attributes ER: Relationship -> relation Keys of connected ER entity sets become Relational attributes

  5. ER ENTITY SETS Name Party Organization Senator Lobbyist State Name Years Bill Name Text

  6. RELATIONS Senator(Name,Party,State,Years) Bill(Name,Text) Lobbyist(Name,Organization)

  7. ER RELATIONSHIPS Name Contributed Party Organization Senator Lobbyist State Name Years Sponsored Wrote Bill Name Text

  8. RELATIONS Sponsored(Senator,Bill) Wrote(Bill,Lobbyist) Contributed(Senator,Lobbyist) Remember, each of these is expressed as a table with the columns given by the atributes

  9. COMBINING RELATIONS Relations can sometimes be combined. Assume a base entity set with its relation. If there is a many-to-one relation, then it can be combined with the base entity set. Should not combine many-to-many Would cause redundancy each of the many stored

  10. COMBINING RELATIONS Example (many-to-one): (Good) Person(Name, Birthdate, Height, Weight, Eye Color, Hair Color) BornIn(Person,Town) Combined: Person(Name, Birthdate, Height, Weight, Eye Color, Hair Color, Town) Only one Town per Person Example(many-to-many): (Bad) Senator(Name, Party, State, Years) Sponsored(Senator, Bill) Combined: Senator(Name, Party, State, Years, Bill) Many Bills per Senator

  11. WEAK ENTITY SETS The relation for a weak entity set must contain all the elements of its key Supporting relationships are usually redundant (unless possibly multi-way)

  12. WEAK ENTITY SET EXAMPLE First Name Last Name Number Note arrrow: indicates many to one. Position Baseball Player Birthdate Plays On Team Nationality Salary Name City

  13. WEAK ENTITY SET EXAMPLE Team(Name, City) Baseball Player(Number, TeamName, First Name, Last Name, Position, Birthdate, Nationality, Salary)

  14. WEAK ENTITY SET EXAMPLE Team(Name, City) Baseball Player(Number, TeamName, First Name, Last Name, Position, Birthdate, Nationality, Salary) Note that we don t need PlaysOn(BaseballPlayer.Number, BaseballPlayer.TeamName, Team.Name)

  15. WEAK ENTITY SET EXAMPLE Team(Name, City) Baseball Player(Number, TeamName, First Name, Last Name, Position, Birthdate, Nationality, Salary) Note that we don t need PlaysOn(BaseballPlayer.Number, BaseballPlayer.TeamName, Team.Name) Redundant (same)

  16. WEAK ENTITY SET EXAMPLE Team(Name, City) Baseball Player(Number, TeamName, First Name, Last Name, Position, Birthdate, Nationality, Salary) Note that we don t need PlaysOn(BaseballPlayer.Number, BaseballPlayer.Team.Name)

  17. WEAK ENTITY SET EXAMPLE Team(Name, City) Baseball Player(Number, TeamName, First Name, Last Name, Position, Birthdate, Nationality, Salary) Note that we don t need PlaysOn(BaseballPlayer.Number, BaseballPlayer.Team.Name) Already Included

  18. KEYS A Key functionally determines all other attributes of the relation Given a relation and a key, there is only one tuple that corresponds to it There are subtle differences from an E-R key, which we won t go into.

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#