У меня есть база данных PostgreSQL Версии 9.5.0.POSTGRES последовательность TRIGGER на не первичный ключ
В таблице UserComments
был создан как:
create table UserComments (
userId integer,
commentNr integer,
comment text,
UNIQUE (userId, commentNr)
);
таблица не может быть изменена ни я могу добавить дополнительную таблицу.
Я хотел бы сделать последовательность (иными словами: значение автоматического увеличения) на commentNr
в зависимости от суммы userId
записей. Для каждой новой записи с тем же userId
ее значение должно быть увеличено.
Пример:
userId | commentNr | comment -------|-----------|--------- 1 | 1 | blabla 1 | 2 | more bla 2 | 1 | myownbla 1 | 3 | evenmorebla
Я уже нашел ответы на некоторые вопросы с «триггеры» и «функций окна», но и не было на самом деле работает для меня, так как я не разрешается изменять таблицу. Лучшее решение будет триггером на каждом INSERT
, который автоматически counts
/вычисляет commentNr
таким образом я могу добавить новую запись с
insert into user(userId, comment) values ('1', 'bla');
Любая помощь будет оценена.
'primary key (id),' :: в вашей таблице нет столбца 'id'. Пожалуйста, напишите реальный код. – joop
Вы правы - первичный ключ для этого примера является ненужным. –