The reason I've modelled the database like this, is to save space. I've created a utility which converts genealogical data from the Gedcom format to a MySQL-driven database. When dealing with genealogy it's fairly common to have individuals with more than one name; either you're not sure about the person's name, and want to refer to more than one names, or the person have a marriage name etc.
That
name vs.
lastname "bug" was a typo, and it doesn't affect the real problem here.
For simplicity, I could have had a
name table looking like this:
person_id mediumint unsigned not null, /* references 'person' */
firstname varchar(255) not null,
lastname varchar(255) not null
...but that's not really what I want. As I said, I want to save disk space, and by not duplicating data in the database I save a lot of space in this example.
However, after some reading I discovered
Class::DBI::Join which
seems to do what I'm after. The only problem is: I still can't get it to work. Any examples on using that class would have been great, as the example doesn't do it for me.
Thanks again!