私はこの関係を持っており、ボイスコッド正規形に分解しようとしています:ボイスコッド正規形分解第2の関係
私はjobRoleで終わったように、これらの手順で間違ったつもりはないが、何もスーパーの鍵たRelationship R(workerName, pay, project, budgetAllocated, jobRole)
having key (workerName, project)
And the following Functional Dependencies:
workerName -> pay
project -> budgetAllocated
workerName, project -> Role
I have come with this output so far, is this output correct?
workerName, project ->Role
project -> budgetAllocated, pay
i know the first Relationship is in BCNF because of the super key (workerName, project)
what about the second ?
Using the Algorithm:
S = {ABCDE} // Intialization S = {R}
S = {ACDE, AB} // Pick FD: A->B which violates BCNF
S = {ACE, AB, CD} // Pick FD: C->D which violates BCNF
// Return S as all relations are in BCNF
R(workerName, pay, project, budgetAllocated, jobRole)
workerName -> pay
project -> budgetAllocated
workerName, project -> Role
S = {workerName, pay, project, budgetAllocated, jobRole } // Intialization S = {R}
S = {(project,budgetAllocated, jobRole) , (workerName, pay) // Pick FD: workerName -> pay which violates BCNF
S = {(jobRole), (workerName, pay) , (project, budgetAllocated) // Pick FD: project -> budgetAllocated which violates BCNF
(workerName、project)?
与えられた関数の依存関係から、2番目の結果で 'project - > pay'をどうやって得るのですか? – reaanb
@reaanb私はこのアルゴリズムに従おうとしています。S = {ABCDE} //初期化S = {R} S = {ACDE、AB} //ピックFD:BCNFに違反するB- S = {ACE、AB 、CD} // FDを選択:BCNFに違反するC-> D //すべての関係がBCNFにあるので返信 – blueGOLD