Multivalued Dependency (MVD) in DBMS

In Database Management Systems (DBMS), multivalued dependency (MVD) deals with complex attribute relationships in which an attribute may have many independent values while yet depending on another attribute or group of attributes. It improves database structure and consistency and is essential for data integrity and database normalization.

MVD or multivalued dependency means that for a single value of attribute ‘a’ multiple values of attribute ‘b’ exist. We write it as,

a --> --> b 

It is read as a is multi-valued dependent on b. Suppose a person named Beginner is working on 2 projects Microsoft and Oracle and has 2 hobbies namely Reading and Music. This can be expressed in a tabular format in the following way.

Example

Project and Hobby are multivalued attributes as they have more than one value for a single person i.e., Beginner.

What is Multivalued Dependency?

When one attribute in a database depends on another attribute and has many independent values, it is said to have multivalued dependency (MVD). It supports maintaining data accuracy and managing intricate data interactions.

Multi Valued Dependency (MVD)

We can say that multivalued dependency exists if the following conditions are met.

Conditions for MVD

Any attribute say a multiple define another attribute b; if any legal relation r(R), for all pairs of tuples t1 and t2 in r, such that,

t1[a] = t2[a] 

Then there exists t3 and t4 in r such that.

t1[a] = t2[a] = t3[a] = t4[a]
t1[b] = t3[b]; t2[b] = t4[b] 
t1 = t4; t2 = t3 

Then multivalued (MVD) dependency exists. To check the MVD in given table, we apply the conditions stated above and we check it with the values in the given table.

Example

Condition-1 for MVD

t1[a] = t2[a] = t3[a] = t4[a] 

Finding from table,

t1[a] = t2[a] = t3[a] = t4[a] = Beginner 

So, condition 1 is Satisfied.

Condition-2 for MVD

t1[b] = t3[b] 
And 
t2[b] = t4[b] 

Finding from table,

t1[b] = t3[b] = MS 
And 
t2[b] = t4[b] = Oracle 

So, condition 2 is Satisfied.

Condition-3 for MVD

∃c ∈ R-(a ∪ b) where R is the set of attributes in the relational table.
t1 = t4 
And  
t2=t3 

Finding from table,

t1 = t4 = Reading 
And
t2 = t3 = Music 

So, condition 3 is Satisfied. All conditions are satisfied, therefore,

a --> --> b 

According to table we have got,

name --> --> project 

And for,

a --> --> C 

We get,

name --> --> hobby 

Hence, we know that MVD exists in the above table and it can be stated by,

name --> --> project
name --> --> hobby 

Conclusion

  • Multivalued Dependency (MVD) is a form of data dependency where two or more attributes, other than the key attribute, are functionally independent on each other, but these attributes depends on the key .
  • Data errors and redundancies may result from Multivalued Dependency.
  • We can normalize the database to 4NF in order to get rid of Mutlivalued Dependency.