I’m designing a database that stores movie related information. I’m stuck on a problem and can’t seem to know how to solve it.
So I’m creating a database that store movies, and for my movie table these are its attributes
-movieID NUMBER PRIMARY KEY,
-title VARCHAR(10),
-genres genre_varray,
-producers
-director
-cast
I’m going to create another tables for producers, cast and director. My problem is for the fields producers and cast I have to insert a list of people and the cast I have to add a role to each actor, I’m not sure how I would do that, I was thinking of using nested table? Another problem is that a person can be either actor, director, producer or all.
What I have so far is
supertype person_type - personID, name, sex
subtype actor_type - country
subtype director_type - country
subtype producer_type - company
table of people of type person_type
table of movie_people - profession
Thanks for any help.
Any person can perform one or more roles on a movie, and the roles they perform will be different for different movies.
I would have a table of people, a table of movies, a table of role types (eg:Actor, Director, Producer,etc) , and a table linking all three with fields of (PersonID, MovieID, RoleID)
I would also have a separate table for MovieGenres rather than the array you have detailed.