Course + Subject, then no violation of 1NF, 2NF, and 3NF.
Let’s list out all possible functional dependencies:
|
|
Course + Subject is a candidate key.
Course + Lecturer is also a candidate key as we can identify tuples uniquely using it.
Lecturer as a primary key.
| Now you have a determinant that cannot be set as a primary key, hence it violates BCNF. In order to make the table BCNF table, need to decompose it. |
|