There's this one little remnant of "6-think" that has stuck with me. I like to think of myself as no longer beholden to the limits contained in that earlier version. Yet for some reason I have this aversion to adding tables to an application. I'm fairly certain this is a hangover from the 50 file/table limit in FMP 6 days. Despite my data modeling indoctrination whenever I encounter a problem, whether it be in a solution I'm building or that of someone else, my last thought is to add a table to "normalize" that data.
Sometimes I forget that data modeling in FMP 8 is so much easier than it was in FMP 6. Not only can I store the data the way it should be stored, but I can get a bird's eye view of my data paths through the graph. It seems simple enough.
The other day I found myself confronted with a 1:m relationship scenario. The standard method for modeling this is to add the primary key of the "one" side as a foreign key in the table representing the "many" side. However the "many" side in this case would be represented in several such relationships, each with their own foreign key fields. As I considered the prospect of having a half dozen or more foreign key fields in the table, with no more than one field having a value at any one time, it suddenly occurred to me that I could simply add a link table. I didn't need to worry about a 50 file limit. More importantly, I wouldn't need to justify the decision to add the table to someone with barely a tenuous grasp of data modeling concepts. Problem solved, moving on.
Sorry Corn, I can't see how a join table would help here, but I'm dying to learn.
The multi-predicate relationships in FMP 7+ are also useful things to work with, and are able to remove a lot of unnecessary relationships.
Posted by: Vaughan Bromfield | May 17, 2007 at 11:20 PM