-1

My teacher told me that if an entity is in BCNF all determinants should be a super key, but i'm struggling to understand this. I have an entity for a cinema database with following attributes: Showtime_id (PK), Date, Showtime, Hall.

I understand that Showtime_id is a determinant for Date, Showtime, Hall. And that Date, Showtime and Hall is a determinant for Showtime_id, right?

But are these the only determinants in my entity?
Or is

Showtime_id, Date -> Showtime, Hall

Showtime_id, Showtime -> Hall, Date and so on also determinants?

Thank you :)

philipxy
  • 14,867
  • 6
  • 39
  • 83
sakura
  • 1

1 Answers1

2

My teacher told me that if an entity is in BCNF all determinants should be a super key

That is wrong. BCNF is satisfied when/iff all determinants of non-trivial FDs (functional dependencies) are superkeys. Details matter.

I have an entity for a cinema database

What matters to BCNF is that you have a table with certain attributes & you know what FDs hold & what FDs don't hold.

If you mean that the only FDs that hold are the ones that follow from {Showtime_id} being a PK (primary key), then you need to say so. If you don't know what those are, ask a question about that. (When some FDs hold, all the other ones generated from them by Armstrong's axioms hold. But then we still need to know whether any other ones hold or not.)

You must tell us what FDs hold. If you don't know how to determine that from what your table rows mean & the business rules, ask another question where you quote your definition of FD & ask about being stuck. (And say why you think {Showtime_id} is PK.) (But PKs don't matter, CKs (candidate keys) do.)

philipxy
  • 14,867
  • 6
  • 39
  • 83