Presentation is loading. Please wait.

Presentation is loading. Please wait.

Entity-Relationship Model

Similar presentations


Presentation on theme: "Entity-Relationship Model"— Presentation transcript:

1 Entity-Relationship Model

2 Database Modeling Ideas E/R design Relational schema Relational DBMS
The process of designing a database begins with: an analysis of what information the database must hold, and the relationships among components of that information. The structure of the database, called the database schema is specified in a suitable notation for expressing designs. We will use the Entity-Relationship (E/R) model, which is graphical in the nature. Ideas E/R design Relational schema Relational DBMS A mechanical process Abstract design Concrete design

3 Elements of the E/R Model
Entities are like the objects in OO programming. Entity sets are like the classes. However, E/R is a static model, so there are no methods associated with the entities. Movies Attributes are similar to the attributes in OO programming. However, they are atomic, i.e. only numbers and strings are allowed. Title Relationships are connections among two or more entity sets. Stars-in

4 Example Movies Stars-In Stars Owns Studios title year name address
length filmType Owns Studios address

5 Visualizing E/R Relationships
It is often helpful (for us) to represent E/R relationships by a table or relation, each row representing a list (it can be pair) of entities participating in the relationship. For instance the Stars-in relationship could be visualized as a table: Movies | Stars Basic Instinct | Sharon Stone. Total Recall | Arnold Schwarzeneger. Total Recall | Sharon Stone. This table is called the relationship set for the relationship. The members of the relationship set are the rows of the table.

6 Multiplicity of Relationships
A relationship R is many-one from one entity set E to another entity set F, if any member of E can be associated to at most one member of F. We also equivalently say that R is one-many from F to E. Any member of F can be associated with many members of E. Movies Studios Owns Arrows can be used to indicate the multiplicity of a relationship in an E/R diagram. An arrow means “at most one.” It does not guarantee the existence of an entity of the set pointed to. So, if a relationship is many-one from entity set E to F, we place an arrow entering F.

7 Multiplicity (Cont.) Studios Presidents Runs Movies Stars Stars-In
If a relationship R is both many-one from E to F and many-one from F to E, then we say that R is one-one represented by arrows pointing to both E and F. Studios Presidents Runs If a relationship R is neither many-one from E to F or from F to E, then we say R is many-many. Movies Stars Stars-In

8 Multiway Relationships
The E/R model makes it convenient to define relationships involving more than two entity sets. A multiway relationship in an E/R diagram is represented by lines from the relationship diamond to each of the involved entity sets. Motivating Example. Take the previous organization: Movies Stars-In Stars Owns Studios What’s the problem with this design?

9 Relating studios, movies and stars
Suppose that we want to know how studios are related to the stars. I.e. Which stars a studio is (or was) paying for a specific movie. As long as a movie is produced by a single studio the previous organization works very well. Why? Because we can relate a studio s through a specific movie m with the stars sti forming valid triples: (s, m, st1), (s, m, st2),…, (s, m, stk) Suppose now that movies can be produced (and owned) by not just a single studio but, by some studios. (The line connecting studios is without arrow in such a case) Now if we try to create the above triples they can be not valid.

10 Why the triples can be not valid?
Suppose a studio s1 is paying a star st1 for the movie m and a studio s2 is paying st2 for the same movie m. Then we will have the following triples: (s1, m, st1) (s1, m, st2) (s2, m, st1) (s2, m, st2) The second and the third triples are not valid. If we consider the collection of all the valid triples, it is nothing else but a three way relationship between Studios, Movies and Stars

11 Solution: Three-way relationship
Stars Movies Contracts Studios Formally: The relationship Contracts involves a studio, a star, and a movie. This relationship says that a studio has contracted a particular star in a particular movie. In multiway relationships, an arrow pointing to an entity set E means: If we select one entity from each of the other entity sets in the relationship, these entities are related to at most one entity in E.

12 Roles in a relationship
An entity set can appear two or more times in a relationship. If so, we draw as many lines from the relationship to the entity set as the entity set appears in the relationship. Each line to the entity set represents a different role. Original Movies Sequel-of Sequel We assume that a movie may have many sequels, but for each sequel there is only one original movie.

13 Another Example Relationship Set Husband Wife Bob Ann Joe Sue … …
… … Drinkers Married husband wife

14 Another Example Relationship Set Buddy1 Buddy2 Bob Ann Joe Sue Ann Bob
Joe Moe … … Buddies 1 2 Drinkers

15 Attributes on Relationships
Sometimes, it is convenient to associate attributes with a relationship, rather than with any one of the entity sets that the relationship connects. Consider the 3-way Contracts relationships between a star and a studio for a movie. We might wish to record the salary associated with this contract. We cannot associate it with the star; a star might get different salaries for different movies. It does not make sense to associate the salary with a studio or with a movie. However, it is appropriate to associate a salary with the (star, movie, studio) triple in the relationship set for the Contracts relationship.

16 A relationship with an attribute
Movies title year length filmType Contracts salary Stars name address Studios

17 “Bars-Beer-Drinkers” (BBD) Example
Bars sell some beers. Drinkers like some beers. Drinkers frequent some bars. What would be the E/R diagram?

18 “Bars-Beer-Drinkers” (BBD) Example
name license addr Note: license = beer, full, none Beers manf name Sells Bars sell some beers. Frequents Drinkers frequent some bars. Likes Drinkers like some beers. Drinkers addr name Why we need it?

19 BBD relation sets For the relationship Sells, we might have a relationship set like: Bar Beer Joe’s Bar Bud Joe’s Bar Miller Sue’s Bar Bud Sue’s Bar Pete’s Ale Sue’s Bar Bud Lite

20 BBD Multiway Relationship
Suppose that drinkers will only drink certain beers at certain bars. Our three binary relationships Likes, Sells, and Frequents do not allow us to make this distinction. But a 3-way relationship would.

21 name addr name manf Bars Beers license Preferences Drinkers name addr

22 A Typical Relationship Set
Bar Drinker Beer Joe’s Bar Ann Miller Sue’s Bar Ann Bud Sue’s Bar Ann Pete’s Ale Joe’s Bar Bob Bud Joe’s Bar Bob Miller Joe’s Bar Cal Miller Sue’s Bar Cal Bud Lite

23 Multiple Relationships Between Two Entity Sets
Likes Drinkers Beers Favorite

24 “Exactly one” Multiplicity
Best- seller Manfs Beers Some beers are not the best-seller of any manufacturer, so a rounded arrow to Manfs would be inappropriate. But a manufacturer has to have a best-seller (we assume they are beer manufacturers).


Download ppt "Entity-Relationship Model"

Similar presentations


Ads by Google