Цепочка нормализации базы данных
У меня есть несколько таблиц цепочки, например, так:
Таблица 1
product_id SERIAL NOT NULL,
name varchar,
Таблица 2(хранится отдельно от table1, потому что то же название продукта, но может быть другого цвета)
table2_id
product_id integer,
color varchar,
FOREIGN KEY (product_id) REFERENCES table1 (product_id) ON DELETE CASCADE
Таблица3(хранится отдельно от table2, потому что продукт того же цвета, но может быть другого размера)
table3_id
table2_id integer,
size varchar,
FOREIGN KEY (table2_id) REFERENCES table2 (table2_id) ON DELETE CASCADE
например, данные о продукте могут существовать таким образом:
a chair (name) - red (color) - 100cm(size)
a chair (name) - red (color) - 200cm(size)
b chair (name) - green (color) - 100cm(size)
b chair (name) - green (color) - 200cm(size)
c chair (name) - black (color) - s(size)
c chair (name) - black (color) - m(size)
d chair (name) - black (color) - null(size)
e chair (name) - gold (color) - big(size)
e chair (name) - gold (color) - small(size)
Чтобы нормализовать таблицы (т. Е. Удалить дубликаты), я разделил их на 3 таблицы, но я не уверен, правильное ли это построение цепочек или нет.