I couldn’t resist the title given my viewing preferences.
Thanks to the patient help of several here, I’ve made some good progress on enhancing the structure of my Viewing Record DB. This is how the relationships look at present:
This is a BIG improvement from the flatfile structure I started with, and the limited normalisation I’ve done so far has already made it cleaner and simpler and made future expansion easier. But now I have design/relationship question I’m stuck on
This is how the “Dramas” table looks at the moment:
I got a lot of practice with UPDATE CASE WHEN tidying up the structure to have COUNTRY, LANGUAGE and NETWORK as FKs, and in removing movies onto their own table, again with LANGUAGE and COUNTRY as FKs. It made more sense to have a separate Movies table because Movies had no entry for NETWORK and their “Eps Watched” and “Eps Total” are of course always the same, at 1 each.
BUT, both Dramas and Movies have Genre columns, and this is where I’m a bit stuck. I’ve arbitrarily decided to assign each Drama or Movie up to 3 genres. As the screenshot shows, those genres can appear in different columns depending on their priority for the given title. I’m hoping to be able to run queries to determine (as a hypothetical example) whether my viewing scores reflect a preference for “Romance Mystery Legal” over “Legal Mystery Romance” etc, and these option are relevant to both Movies and Dramas.
I was wondering whether I need to create 3 copies of the same “Genre” table and name each copy to match the column names in the existing tables then create FK links. Then I wondered if I needed to do something similar with LANGUAGES to allow for content that is in more than one language - an example of this would be Ae Fond Kiss, in which I find the characters much easier to understand when they’re speaking Panjabi/Urdu than when speaking my L1 English, thanks to their Glaswegian accents! Because of that, I’ve been thinking about adding a column for secondary languages in the same content, along the the lines of the Genre options.
And that’s where I’m at now: I’m looking forward to playing around with forms and reports to learn how to get the most out of the structure I have so far, but would REALLY value thoughts and suggestions on how to address these genre/language issues.