Supervision 1 Questions

These are suggested questions that supervisors might want to use in their supervisions. They are meant to indicate the type of questions that will be on the tripos exam.

  1. Discuss the practical exercises for relational databases. Do you understand the queries and what they are doing?

  2. Currently our relational database uses a single table:

    genres(movie_id, genre)
    

    to record the genres associated with a movie. We could instead implement this with two tables as:

    has_genre(movie_id, genre_id)
    genres(genre_id, genre, ...)
    

    where the first table represents the relationship and the second table contains genres. Similar changes could be made to the tables languages, certificates, locations, etc. Discuss the pros and cons of the two approaches.

  3. Our relational database has another example of representing multiple notions in a single table — the credits table. Discuss the pros and cons of at least one alternative schema. Is this just another instance of the issue discussed in question 1, or is it conceptually different?

  4. The current database encodes a person's name in the form surname, firstname (number), for example Hamill, Mark (I). This form allows convenient sorting by surname. How would you change the schema to allow names to be displayed in the form firstname surname, e.g. Mark Hamill, while still allowing sorting by surname? What issues may arise if you make such a change?