Firstly, I know that title doesn't make much sense, but it's the only thing I could think to call this situation.
Secondly, I know my table structure isn't kosher with a lot of people but it's what I'm going with so let's just ignore that part.
So I've got a database tracking assets in a company. I've decided to consolidate any information related to each asset into a single table called tblProperties. The first issue I ran into there is that some properties need to be unique and some don't (i.e. Serial numbers, MAC addresses, IPs are unique; but Brand, Processor and Location do not need to be unique). So what I ended up doing is creating tbl_Unique_Properties and tbl_Standard_Properties and then create a relationship back to tblProperties which then has a relationship to the actual asset table.
The problem I'm running into with this structure is that one value in each of tbl_Unique_Properties and tbl_Standard_Properties could be associated to the same object in tblProperties, but objects in tblProperties need to only be associated to one value out of the two tables (hence the concept "one-to-less-than-one relationship").
Please advise. Thank you.
tblProperties
PropertyID -pk
PropertyClassID -fk
tbl_Unique_Properties
UniquePropertyID -pk
PropertyID -fk
UniquePropertyValue
tbl_Standard_Properties
StandardPropertyID -pk
PropertyID -fk
StandardPropertyValue