Jason,
I think it will not work as suggested because if we take the samples:
ProductOptionsID | ProductID | OptionID | OptionGroupID | OptionPriceIncrement
1 | 1 | 2 | 1 | 0
the example above uses:
productID 1 which is wefted hair.
OptionID 2 which is Dark Brown
OptionGroupID 1 which is color
OptionPriceIncrement 0
ProductOptionsID | ProductID | OptionID | OptionGroupID | OptionPriceIncrement
2 | 2 | 7 | 2 | 5.95
the example above uses:
productID 2 which is prebonded hair
OptionID 7 which is 14 inch
OptionGroupID 2 which is size
OptionPriceIncrement 5.95 This will be added to the base price set in the product table.
for the first sample: 1 | 1 | 2 | 1 | 0 style is unknown
for the second sample : 2 | 2 | 7 | 2 | 5.95 color and style is unknown.
I have tried to fill the PRODUCTOPTIONS and could not get all the combinations.
Also on a related matter, the PRODUCTSTOCK column in the product table can't differentiate stock-wise a wefted hair,dark brown, 12", loose wave " from say
wefted hair,dark brown, 14", straight. They should not be the same product if we need to keep inventory AVAILABLE/NOT AVAILABLE.
It seems if we could manage to have a table like PRODUCTSOPTIONS to list all the combinations of productsID and options in one record(row) , we could add PRODUCTSTOCK column
there.
or may be I am missing something?