Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I have this relation:

R = ABCDE
F: AB->DE, AC->B, DE->C, AE->C, C->AB.

Is AC->B a partial dependency in F?

I'm guessing it is, because

C->AB can be decomposed to

C->A
C->B

from where we can conclude that there exists a subset of AC (C in our case) which goes into B, that is

C->B.

I couldn't find a formal definition on the internet, so I would like it if someone could confirm my assumption.

share|improve this question
    
I found a definition at [basicsofcomputer.com/…: "A dependency in which one or more non-key attributes are functionally dependent .on part (but not all) of the primary key is known as partial functional dependency." –  miracle173 Dec 5 '12 at 11:59
    
@miracle173: Oooh, that's a bad definition. This one is better, but still not perfect (describing 2NF): "a table is in 2NF if and only if it is in 1NF and no non prime attribute is dependent on any proper subset of any candidate key of the table." –  Mike Sherrill 'Cat Recall' Dec 5 '12 at 17:56

1 Answer 1

In order for AC->B to be a partial key dependency, it has to satisfy these conditions.

  • AC must be a candidate key. (Not necessarily the primary key.)
  • One of these functional dependencies must hold.

    • A->B, or
    • C->B

So the first question I'd ask myself is, "Is AC a candidate key of F?"

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.