Not all of these fields are necessary in one database. For example, with Size and color you can see the "Quick & Dirty" approach using AvailableSizes and AvaliableColors or the SizeID and ColorID ...
The first thing in building any E-commerce app is creating the underlying database to support it. As much as possible, you should try to build your application code and business logic into your ...