I've studied the 5 ways that were mentioned here
I am still having trouble finding one to implement into a new DB design I'm creating. Each one of the mentioned ways has it's pros and cons and the cons were not suitable for my needs.
I will explain in short what I need. My company has divisions and each division has categories (I am just listing a few for an example):
Video editing (VE) cat 1: Events cat 2: Clips cat 3: Production
Graphic Design (GD) cat 1: Digital albums cat 2: Photo manipulation cat 3: Photo retouching
As you can see, each product has completely different attributes.
As of now, I have an Excel file for each division, where each file has tabs for all the clients (which is why I'm making a DB).
On my website now, each category has an ORDER FORM that is designed for the attributes in that category. I'm having trouble implementing this into an ORDERS table hierarchy.
As you can see in my screenshot, (don't mind the naming... I used "attributes" so you can see what it is. I will be changing this to "att" for short. I also just made some basic columns for testing) the four right tables are what the ORDER FORMS today look like when clients order products from these categories. So if you think about it, they should be a ONE-TO-ONE relationship with the ORDER_DETAIL table (like I did to one of them in the screenshot) because you can only have ONE row of these in an order. But an issue I was thinking is that the name "order_detailsID" doesn't match and I've learned that relation keys should have the same names... and I can't name the attribute table's PK's "order_detailsID" because that's not what it is... it's attributes.
Maybe my ORDERS and ORDERS_DETAILS are wrong... I don't know. I need help to figure out how to make clients be able to order a product and based on that, to get the appropriate attribute table to fill out a row.
(and of course, the FK "order_detailsID" field in the att tables are not being used as I didn't know if I will need them.)
What would you suggest?
Click HERE for large original quality of screenshot.