We help IT Professionals succeed at work.

Building Film Production Database

rose1013
rose1013 asked
on
549 Views
Last Modified: 2013-11-05
I am attempting to build a film production database. Allow me to define:

Tables:

Films
     ID, Name, (other info)
Scenes
     ID, FilmID (which film the scene is from), Scene no., (other info)
Characters
     ID, FilmID, SceneID, Name, Actor (PersonnelID)
Personnel
     ID, Name, (other info)

Etc. That's the basic structure, with a lot more tables than just characters, like props, make-up, etc.

I've built the tables but I'm running into a problem. Each scene should be able to have several characters, props, etc. I assume I would want to make a table as follows:

Scene Items
     ID, FilmID, SceneID (who's lookup is dependent on the selected FilmID), ItemID (like CharacterID, PropID)

The problems are the following: making one lookup dependent on the other (ie SceneID dependent on FilmID) and finding a way to make ItemID attach itself to ALL the item tables( eg. Characters, Props) and select only one. So it might end up like the following for a scene with two characters and a prop:

Scene Items

1     Glass     1     Jenna (in Characters table)
2     Glass     1     Nathan (in Characters table)
3     Glass     1     Nathan's Phone (in Props table)

I suppose I could include a type field...

1     Glass     1     Char     Jenna (in Characters table)
2     Glass     1     Char     Nathan (in Characters table)
3     Glass     1     Prop     Nathan's Phone (in Props table)

But the lookup Item field would still have to be dependent on the type field, which as I proved above, I seem to be lost on. Thanks.
Comment
Watch Question

This one is on us!
(Get your first solution completely free - no credit card required)
UNLOCK SOLUTION

Author

Commented:
Good. I expected that would be the right way to go. Therefore, how do you set up that self-dependent relationship?
ie
You have 2 tables: Films and Scenes
You have a linking table: Scene Items

Films has FilmID, Film Name
Scenes has SceneID, Scene No., FilmID (which film the scene is from, since the DB will contain a running catalog of all production info related to each film produced)

Scene Items has ItemID, FilmID (which film we're talking about), SceneID (which gives only scenes with the same FilmID as this records)

As you can see, [Scene Items].SceneID's possible choices are directly dependent on the input found at [Scene Items].FilmID. For some reason the answer eludes me.
Unlock the solution to this question.
Join our community and discover your potential

Experts Exchange is the only place where you can interact directly with leading experts in the technology field. Become a member today and access the collective knowledge of thousands of technology experts.

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.