Ich habe ein paar Probleme bei der Suche nach allen richtigen FDs mit einem relationalen Schema. Insbesondere unter Berücksichtigung der folgenden Datenbank, die infomration über Benutzer abgegeben Rezepte und Zutaten speichert:Finden Sie funktionale Abhängigkeiten von Rezept-Inhaltsstoffen und BCNF-Zerlegung
Recipe (userID, code, title, description, username, email, vegan, vegetarian, difficulty)
with (userID, code) PK
Ingredient (code, name, description, vegan, vegetarian) with (code) PK
RecipeIngredient (userID, recipeCode, ingredientCode, recipeTitle, ingredientName, quantity)
with (userID, recipeCode, ingredientCode) PK
Keys userID, recipeCode in recipeIngredient sind Fremdschlüssel Referenzierung Rezept und ingredientCode ist ein Fremdschlüssel Referenzierung Zutaten. Jeder Benutzer hat eine einzelne E-Mail-Adresse und einen Benutzernamen. Wenn ein Rezept oder eine Zutat vegan sind, dann sind sie auch Vegetarier.
Ich muss entscheiden, ob die oben genannte Datenbank gut entworfen ist (dh in BCNF) und wenn nicht, restrukturiere sie in BCNF.
Wie kann ich alle FDs finden?
Was bedeutet der angegebene Hinweis, was das Verfahren ist? Wie hast du es bisher angewendet? Wo steckst du fest? PS-PKs sind irrelevant, Kandidatenschlüssel sind wichtig. – philipxy
FDs werden basierend auf einem Verständnis der Domänen- und Systemanforderungen ausgewählt. Beispieldaten sind oft nützlich, um zu sehen, welche FDs halten oder nicht halten. Wenn Sie nur Tabellen- und Spaltennamen haben, schlage ich vor, dass Sie (a) die Rolle des Datenmodellierers übernehmen, das System mit relevanten Interessenvertretern diskutieren, die Anforderungen analysieren und dann geeignete FDs auswählen, oder (b) das Projekt an seine Quelle zurückgeben unzureichende Information. – reaanb
Wurden Sie * diese PKs/CKs * gegeben? Suchen Sie nach der Definition des Kandidatenschlüssels. Wenn Sie wissen, dass Spalten ein CK sind, kennen Sie bestimmte FDs. Das liegt daran, dass die FDs die CKs bestimmen. Und auch, wenn Sie diese PKs/CKs nicht erhalten haben, warum denken Sie, dass sie CKs sind? – philipxy