Как ограничить число много в отношениях один-ко-многим между двумя таблицами? - PullRequest
2 голосов
/ 12 апреля 2011

У меня есть база данных MySQL с двумя таблицами MySql.Первая с первой таблицы (таблица A) имеет столбец с уникальными значениями (от значений (от 1 до n)). Во второй таблице 2 (таблица B) у меня есть два столбца: в первой у меня есть имя ивторой у меня есть значения от 1 до n (если я объявил значение в. Второй обновленный столбец в таблице B - это ссылка на первый и наоборот. Это сделано) в таблице A.

Мой вопрос: Могу ли я ограничить число раз, когда значения из второй в таблице A появляются в таблице B, в частности, максимум 10 раз? Примером этого является: (с ограничением для столбца val до 3) (третийтаблица будет отправить сообщение об ошибке)

First table:      Second table:        Third table(imaginary)
+---+             +----+-----+          +----+-----+ 
|val|             |name| val |          |name| val |
+---+             +----+-----+          +----+-----+
| 1 |             |  a |  1  |          |  a |  1  |          
| 2 |             |  b |  2  |          |  b |  2  |
+---+             |  c |  1  |          |  c |  1  |
                  |  d |  1  |          |  d |  1  |
                  +----+-----+          |  e |  1  |
                                        +----+-----+

PS: Извините за мой английский.

Ответы [ 2 ]

1 голос
/ 12 апреля 2011

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

0 голосов
/ 12 апреля 2011

Я думаю, вам нужно использовать триггер: http://forge.mysql.com/wiki/Triggers#Emulating_Check_Constraints

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