Presentation is loading. Please wait.

Presentation is loading. Please wait.

Entity-Relationship Model. The process of designing a database begins with: –an analysis of what information the database must hold, and –the relationships.

Similar presentations


Presentation on theme: "Entity-Relationship Model. The process of designing a database begins with: –an analysis of what information the database must hold, and –the relationships."— Presentation transcript:

1 Entity-Relationship Model

2 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. Database Modeling IdeasE/R designRelational schemaRelational DBMS Mechanical process Abstract designConcrete design

3 Elements of the E/R Model Movies Title Stars-in Entities are like 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. Attributes are similar to the attributes in OO programming. –However, they are atomic, i.e. only numbers and strings are allowed. Relationships are connections among two or more entity sets.

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

5 Visualizing E/R Relationships It’s often helpful (for us) to represent E/R relationships by a table, each row representing a list (it can be pair) of entities participating in the relationship. For instance the Stars-in relationship could be thought of 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 E to F if any member of E can be associated to at most one member of F. Equivalently, we say that R is one-many from F to E. Arrows indicate the multiplicity of a relationship. Arrow means “at most one.” It does not guarantee the existence of an entity of the set pointed to. MoviesStudiosOwns

7 Multiplicity (Cont.) 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 Arrows pointing to both E and F. If a relationship R is neither many-one from E to F or from F to E, then we say R is many-many. StudiosPresidentsRuns MoviesStarsStars-In

8 Sometimes binary relationships aren’t enough! Example What could go wrong with this design? Movies Stars-In Stars Owns Studios No arrow now!

9 Relating studios, movies and stars Suppose that we want to know: Which stars a studio is paying for a specific movie? As long as a movie is produced by a single studio (having the arrow) the previous organization works very well. Why? –Because we can relate a studio s through a specific movie m with the stars st i forming valid triples: (s, m, st 1 ), (s, m, st 2 ),…, (s, m, st k ) Suppose now that movies can be produced (and owned) by not just a single studio but, by some studios (no arrow). Now if we try to create the above triples they can be invalid.

10 Why the triples can be invalid? Suppose studio s 1 is paying a star st 1 for the movie m and studio s 2 is paying st 2 for the same movie m. Then we will have the following triples: (s 1, m, st 1 ) (s 1, m, st 2 ) (s 2, m, st 1 ) (s 2, m, st 2 ) The second and the third triples aren’t 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 1.Relationship Contracts involves a studio, a star, and a movie. 2.It says that a studio has contracted a particular star in a particular movie. 3.Arrow pointing to Studios means: If we select one entity from Stars and one entity from Movies, these entities (together) are related to at most one entity in Studios.

12 Roles in a relationship An entity set can appear two or more times in a relationship. Each line to the entity set represents a different role. A movie may have many sequels, but for each sequel there is only one original movie. Movies Sequel-of Original Sequel

13 Another Example Drinkers Married husband wife Relationship Set HusbandWife BobAnn JoeSue…

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

15 Attributes on Relationships salary Movies titleyear lengthfilmType Contracts Stars nameaddr Studios name addr We wish to record the salary associated with a contract. Can’t associate it with the star; A star might get different salaries for different movies. Doesn’t make sense to associate it with a studio or with a movie. However, it’s appropriate to associate a salary with the (star, movie, studio) triple in the relationship set for the Contracts relationship.

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

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

18 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.

19 Bars Beers Drinkers name addr manf nameaddr license Preferences BBD Multiway Relationship

20 A Typical Relationship Set BarDrinkerBeer Joe’s BarAnnMiller Sue’s BarAnnBud Sue’s BarAnnPete’s Ale Joe’s BarBobBud Joe’s BarBobMiller Joe’s BarCalMiller Sue’s BarCalBud Lite

21 Multiple Relationships Between Two Entity Sets DrinkersBeers Likes Favorite

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


Download ppt "Entity-Relationship Model. The process of designing a database begins with: –an analysis of what information the database must hold, and –the relationships."

Similar presentations


Ads by Google