这个数据库是 3NF 还是 BCNF?

Is this database 3NF or BCNF?

我有这个 table 规则是:学生在一门学科中接受考试并在 class 列表中获得一个位置。众所周知,两个学生不能在同一科目中获得相同的位置。这是 3NF 数据库还是 BCNF,对此我不能有 100% 肯定的答案

-- Student STUDENT examined in course COURSE
-- obtained position POSITION on class list.
--
test {STUDENT, COURSE, POSITION}
 KEY {STUDENT, COURSE}
 KEY {COURSE, POSITION}

不平凡FDs:

{STUDENT, COURSE}   --> {POSITION}
{COURSE, POSITION}  --> {STUDENT}

使用此作为 NF 的快速检查:

---------------------------------------
For each nontrivial |
    FD X --> Y      |
at least one holds  | 2NF   3NF   BCNF
---------------------------------------
X is a superkey        ✔     ✔     ✔

Y is a subkey          ✔     ✔

X is not a subkey      ✔
---------------------------------------

FD X --> Y is trivial iff Y ⊆ X

对于两个非平凡的 FD,X 是一个超级键; BCNF.