Вставка записей в первичные столбцы внешнего ключа из другой таблицы

РЕДАКТИРОВАТЬ: Это, казалось бы, термин «соединительные таблицы» получил то, что мне нужно

Я пытаюсь вставить запись в таблицу produ_tag с первичным и внешним ключом в качестве столбцов.

produ_tag

ссылка на структуру таблицы

товары

структура продуктов

теги

структура тегов

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

Проблема в том, что они первичны, поэтому, если у меня есть продукт с 2 тегами, запись не будет вставлена, поскольку в нее уже был вставлен тот же продукт.

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

0

Решение

produ_tag Таблица является «таблицей мостов», а составной первичный ключ позволит использовать любое количество тегов (namCh) быть связанным с продуктом (refHe), при условии, что тег существует в tags стол и что (refHe, nameCh) пара уникальна (то есть вы не можете ассоциировать один и тот же товар и тег более одного раза).

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

Не удаляйте свои первичные ключи. Единственная очевидная проблема, которую я вижу, состоит в том, что нет никакого ограничения FK от produ_tag.refHe в products.refHe,

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector