OK, if you're willing to read a really long message, here goes...
The database I'm creating will hold information about program variables. I write computer code for a propriatary computer that controls equipment in chemical plants. Each variable has certain properties that pertain to all the variables, and some variables have extended properties that pertain only to one type of variable. In the database, these variables are referred to as 'Tags'. The extended information that specifies the type of tag can be referred to as 'AlarmTags', 'InputTags', 'OutputTags', and so on. Not all variables have this extended info, so there will be many records in the main table that do not have related records in the subset tables, as they aren't needed.
According to the database design book that I read, when you have a table that will contain empty fields, and those are always empty for certain records, you should split that table out into a subset table.
So, I have a main, or parent table, called 'Tags'. There are several subset tables that provide more information about the record in 'Tags' as necessary (see above).
According to Mike Hernandez, the author of the book I'm reading (he's a really nice guy and responds to my emails, pretty cool!) this would be the proper setup for a table/subset table combination (PK means primary key, FK means foreign key, the other fields are just there to show that there's more information):
Tags AlarmTags
---------------------------
TagID PK-|----|-TagID (PK/FK)
TagName AlmDef
ModName AlmGlos
The TagID in the 'Tags' table and 'AlarmTags' subset table is the Primary Key for both tables as well as the Foreign Key for the subset table. There is a one to one relationship because only one record in AlarmTags relates back to the main table 'Tags' and vice versa.
Maybe this is just theory and not practice. I don't know, this is the only book I've read...
Thanks again for your responses,
Q-