在给定关系模式的情况下,我在查找所有正确的 FD 时遇到了一些问题。特别是,考虑以下数据库,该数据库存储有关用户提交的食谱和成分的信息:
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
RecipeIngredient 中的keys userID、recipeCode 是外键引用Recipe,componentCode 是外键引用成分。每个用户都有一个电子邮件和用户名。如果食谱或成分是素食主义者,那么它们也是素食主义者。
我必须确定上述数据库是否设计良好(在 BCNF 中的意思),如果不是,则将其重组为 BCNF。
我怎样才能找到所有的FD?