проблема во многих отношениях

У меня есть две таблицы jewelry(j_id,j_name,Description) и style(style_id,style_name,image) каждая таблица имеет много-много отношений с другой таблицей, так как один ювелирный продукт может иметь несколько стилей и есть больше продукта того же стиля , поэтому отношения много для многих.

Теперь мой вопрос заключается в том, как я могу связать эти таблицы, т.е. хочу вставить одну запись в таблицу украшений, и для одного ювелирного продукта должно быть несколько стилей.

На странице html jewelry. Я хочу поместить стиль в раскрывающийся список нескольких вариантов, который динамически заполняется из таблицы стилей, и если пользователь хочет выбрать два стиля для одного и того же продукта, они могут.

Related of "проблема во многих отношениях"

Я бы порекомендовал 4 стола, 3 для ювелирных изделий и стиля и четвертый для заказов.

Ювелирные изделия: jid (PKEY), jname, описание

Стиль: сид (PKEY), оглушение, описание

Продукт: pid (PKEY), sid (FKEY), джид (FKEY) – один продукт определяет уникальную комбинацию стиля и покрытия

Заказ: oid (PKEY), pid (FKEY), другие данные (имя, адрес и т. Д.),

Для каждого украшения восстанавливайте связанные стили с помощью таблицы продуктов и заполняйте поля на странице html. Для каждого заказа храните идентификатор продукта, который однозначно идентифицирует как драгоценности, так и стиль.

Не уверен, что это вопрос проектирования базы данных. Для меня это больше похоже на вопрос программирования, и в этом случае было бы полезно узнать, какой язык программирования и база данных вы используете.

В любом случае, вот какой-то псевдо-код, который делает то, о чем я думаю, о чем вы спрашиваете.

 Add one row in table jewelry Store the new jewelry.j_id to a variable @jid for each @StyleID in SelectedStyleList begin Add one row to table jewelry_style set jewelry_style.j_id=@jid, jewelry_style.style_id = @StyleID end 

ваш вопрос заключается не в разработке вашей базы данных для этого отношения «многие ко многим», а о стратегии вставки при создании новых объектов ювелирного стиля и отношений между ними?

В этом случае ваша стратегия должна заключаться в транзакции, вставляющей ваши основные данные и после этого связанной друг с другом. В случае абортов вы можете просто отменить транзакцию, и все, что вы создали, будет удалено. Пока вы находитесь в транзакции и ваш уровень изоляции прав, никто не увидит временно созданные данные