Ограничить количество строк, содержащих одинаковое значение в MySQL - PullRequest
1 голос
/ 13 декабря 2011

У меня есть таблица, которая выглядит примерно так:

CREATE TABLE shift (
    shift_id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
    week_id INTEGER NOT NULL,
    start_time DATETIME
);

Теперь я хочу ограничить количество строк, которые могут иметь одинаковое start_time.Например, я хочу, чтобы было максимальное количество двух строк, которые можно вставить для любого заданного времени начала.Возможно ли сделать это с каким-то ограничением?Если нет, то как мне это сделать?

1 Ответ

0 голосов
/ 13 декабря 2011

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

Подробнее по темездесь: Триггеры MySQL

...