Динамические последовательности, ограничение последовательности

SadekiSan
Дата: 02.04.2015 17:56:36
Добрый вечер. Проблема у меня следующая. Есть таблица, в которой нас интересует две колонки. Условно первая колонка (число, category) - это категория форума, вторая (число, theme) - тема. На сайте для пользователя в каждой категории есть кнопка создать тему. Что должно происходить с таблицей, когда пользователь жмёт кнопку создать тему, в таблицу добавляется строка, где в к category записывается номер категории, а вот в theme ВНИМАНИЕ!!! бд сама подставляет значение (условия: theme начинается с 1, и для каждого поля номера в поле category своя последовательность, то есть если есть запись category - 1, theme - 1, следующей записью, если человек создал тему в другой категории будет caterory - 2, theme - 1, а следующая запись в категории 1, будет category - 1, theme 2,). Вот, подскажите, пожалуйста, как это реализовать.
p2.
Дата: 02.04.2015 18:37:38
SadekiSan,

Блокируешь всю таблицу, получаешь coalesce(max, 0)+1, вставляешь...
С сиквенсом нет смысла надеяться на "последовательную" нумерацию.
LeXa NalBat
Дата: 03.04.2015 15:55:54
Откажитесь от требования последовательной нумерации в категории. Достаточно сквозной уникальной нумерации.

category - 1, theme - 1
category - 1, theme - 2
category - 2, theme - 3
category - 1, theme - 4
category - 2, theme - 5
...