K1200 Posted February 16, 2008 Posted February 16, 2008 I'm in the process of splitting a table containing images and their descriptions into two separate tables (for performance reasons). In looking at design alternatives, I've come up with these considerations: Parallel Tables (pure, no links) Depend on GetNthRecord(Image)::GetNthRecord(Description) Requires meticulous record-level operations on adds/deletes Parallel, but singly-linked Include associated image record number in description Both tables substantially "ordered / sequential", which would enhance performance After-the-fact processing could confirm and restore proper relationships Parallel, doubly-linked Same advantages as above, but with the redundancy. I'm not comfortable with the fourth alternative, which would be "entirely relational" -- with the individual tables standing on their own. In other words, if an image is deleted, but the description is still there, so be it ... "Image Not Found". The bottom line, of course, is that I can never allow an image to become disassociated from its description. BTW, images are acquired in groups of two or three -- many times during the day -- and the user enters the descriptions after the basic records are created by a script. (And image/description combinations may be deleted by the user.) I'll appreciate any advice -- especially from anyone who's managed thousands of images over many months. Thanks in advance.
comment Posted February 16, 2008 Posted February 16, 2008 I am not sure I see the dilemma: if a description is always created when the image record already exists, why not make it a "child" of the image (i.e. the description has a foreign key of the image)? The relationship should have 'Delete related records..." turned on both sides, and adding new records to the descriptions table - other than by creating a single child record of an existing image - needs to be prohibited.
K1200 Posted February 16, 2008 Author Posted February 16, 2008 That sounds like a perfect solution. The basis for my "dilemma" is that I still think in hierarchical terms -- and struggle to make the transition to the higher ground of relational. I've seen those settings many times, but have never used them. I'll read up a bit and head down that path. Thanks very much.
Recommended Posts
This topic is 6185 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now