Red > Green > Refactor > Red

cycle is based on desire

Functional dependency ; Design

関数従属性/部分関数従属性

candidate key => 候補キー => (主キーの候補となるキー and タプルを一意に識別できる and 極小)

non-key attribute => (主キーを含めていかなる候補キーにも属していない属性)

Definition

  •  (\textit{ candidate key: X }) \rightarrow (\textit{ non-key attribute: Y })

and

  •  (\textit{ candidate key: X'\textit} (X' \subset X ) ) \rightarrow (\textit{  non-key attribute: Y })

ex

Given

 \textit{ X is non-key attribute }( X \in \bigl{ X1, X2, X3 \bigr} )

and

 \textit{ Y is candidate key }

...

only

 \bigl{ X1, X2, X3 \bigr} \rightarrow Y

is true

and

any such like

 \bigl{ X1 \bigr} \rightarrow Y, \bigl{ X1, X2 \bigr} \rightarrow Y, \bigl{ X2, X3 \bigr} \rightarrow Y ...

are false ... {1}

then

Functional dependecy is satisfied.

...

when {1} is true

example

 \bigl{ X1 \bigr} \rightarrow Y is true

then partial functional dependency is satisfied.


参考元

Functional dependency - Wikipedia, the free encyclopedia