Уникальное ограничение на основе значения соответствующего столбца - PullRequest
1 голос
/ 25 мая 2019

У меня есть следующая (упрощенная) структура данных:

Property                    Product
-----------   n <----> 1    -------
product_id                  manufacturer
type                        name
value                    

Где таблица продуктов может выглядеть следующим образом

| name         |
|--------------|
| iPad 2       |
| iPhone 6     |

, а связанные свойства могут быть

| product_id | type        | value |
|----------------------------------|
|      1     | RAM         | 16GB  |
|      1     | CPU         | A11   |
|      1     | Screen Size | 10"   |
|      2     | Cellular    | yes   |
|      2     | Screen Size | 5.5"  |

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

1 Ответ

3 голосов
/ 25 мая 2019

Я понял решение сразу после публикации этого вопроса. Ограничение может быть наложено на отношение свойств, так что каждая пара product_id, type может существовать только один раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...