Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between associative entity and associative relationship attribute?

What is the difference between an associative entity and an associative relationship attribute? In my book titled, Modern Database Management (Hoffer, 11th edition), the author states that there is a difference between the two. Though, it doesn't really explain why there's a difference, instead, it just gives examples of how they're different.

From what I gather, a relationship that has a single attribute associated with it is an associative relationship attribute and is denoted with a dashed line to a rounded-corner rectangle with that attribute inside that rectangle. Whereas an associative entity is more than one attribute that describe the relationship. Both can only be used for many-to-many relationships in ER diagramming. Is my thought process correct?

Edit - Also, I forgot to mention, with associative entities, they also have an attribute that is an unique identifier, at least, this is what I think.

like image 915
rj2700 Avatar asked Mar 06 '15 18:03

rj2700


2 Answers

An associative entity is the table that associates two other tables in a many to many relationship.

An associative relationship attribute is an attribute of the associative entity that exists because of the many to many relationship.

Here's an example. Let's suppose we have the following tables.

User
----
User ID
User Login Name
User Name
User Password

Permission
----------
Permission ID
Permission Name
Permission Description

Ok, we have a many to many relationship between User and Permission. A user can have more than one permission, and a permission can be shared between many users.

So, we create an associative entity.

UserPermission
--------------
User ID
Permission ID
Permission Granted Time Stamp

The permission granted time stamp is an associative relationship attribute. It would not fit in the User table nor the Permission table. It's an attribute of the association.

like image 96
Gilbert Le Blanc Avatar answered Sep 19 '22 20:09

Gilbert Le Blanc


In ER diagramming, M:N relationships can have associative entities OR single associative attributes that describe the relationship. The difference is, associative entities must have a unique identifier and associative attributes don't. According to the book, an associative entity must have:

1-all the relationships for the participating entity types are M:N relationships 

2-the resulting associative entity type has independent meaning to the end user and has an identifier 

3- the entity has one or more attributes 

4-the entity participates in 1 or more relationships independent of the entities related in the associated relationship.
like image 41
rj2700 Avatar answered Sep 20 '22 20:09

rj2700