CREATE TABLE "Products" ( "id" int PRIMARY KEY, "name" varchar(255), "price" varchar, "..." varchar(255) ); CREATE TABLE "SpecificationAttributes" ( "id" int PRIMARY KEY, "name" varchar(255) ); CREATE TABLE "SpecificationOptions" ( "id" int, "name" varchar(255), "attribute_id" int FOREIGN KEY("attribute_id") REFERENCES "SpecificationAttributes" ("id") ); CREATE TABLE "Product_Option" ( "id" int, "Option_id" int FOREIGN KEY("Option_id") REFERENCES "SpecificationOptions" ("id"), "product_id" int FOREIGN KEY("product_id") REFERENCES "Products" ("id"), "displayOrder" int, "AllowFilter" bool, "ShowOnProductPage" bool );