postgres серийный первичный ключ на основе двух таблиц - PullRequest
0 голосов
/ 20 марта 2020

У меня есть таблица с серийным идентификатором серийного идентификатора первичного ключа, как этот

ALTER TABLE tb ADD COLUMN qid integer;
ALTER TABLE tb ALTER COLUMN qid SET NOT NULL;
ALTER TABLE tb ALTER COLUMN qid SET DEFAULT nextval('tb_seq'::regclass);

, это прекрасно работает, когда добавляется новая строка, она автоматически получает новый идентификатор +1. Мне было интересно, может ли первичный ключ в этой таблице получить новый qid на основе дополнительной последовательности.

Например, этот qid основан на tb_seq и позволяет сказать, что таблица tb имеет 717 строк, а другая таблица называется tb2. имеет 750 строк и другую последовательность. когда я добавляю новую строку два tb, я бы хотел, чтобы новый qid был 751. поэтому он будет учитывать две отдельные последовательности, основанные на двух таблицах

1 Ответ

0 голосов
/ 20 марта 2020

AFAIK это невозможно: последовательный столбец может использовать только одну единственную последовательность.

...