Как обеспечить нормальный доступ к другой БД кластера (proxy table).

Мне необходимо получить доступ к данным второй БД в кластере. Для этого я пытаюсь использовать дополнение postgres_fdw и CREATE SERVER, CREATE FOREIGN TABLE, но получается следующее:

In DB1:

CREATE TABLE cst
(
jd smallserial NOT NULL,
txt character(16),
CONSTRAINT pk PRIMARY KEY (jd)
)
;
insert into cst (txt) values
("first")
("second")
("third");

In DB2:

CREATE EXTENSION postgres_fdw;

CREATE SERVER ttt
FOREIGN DATA WRAPPER postgres_fdw
OPTIONS (host 'localhost', dbname 'test', port '5432');

CREATE USER MAPPING FOR uuu SERVER ttt OPTIONS (user 'uuu', password '....');

CREATE FOREIGN TABLE cst (
jd smallserial NOT NULL,
txt character(16)
)
SERVER ttt;

select * from cst; -> работает нормально

insert into cst(txt) VALUES
('Cheese'),
('Bread'),
('Milk');

Ошибка: "(jd)=(1)" exists.
CONTEXT: Remote SQL command: INSERT INTO public.cst(jd, txt) VALUES ($1, $2)

insert into cst(jd,txt) VALUES
(null,'Cheese'),
(null,'Bread'),
(null,'Milk');
Ошибка: "jd can not be null.

insert into cst(jd,txt) VALUES
(4,'Cheese'),
(5,'Bread'),
(6,'Milk');

производит вставку, затем попытка в DB1
insert into cst (txt) values ("new")
Ошибка: "(jd)=(4)" exists.
.
Таким образом генерирование identity не выполняется в DB1 при вставке из DB2.
Я подозреваю что и триггеры не буду исполняться так же.
Кто может укажите перстом на способ разрешения проблемы.

Опции просмотра комментариев

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

А чем не устраивает

А чем не устраивает DBLINK?
http://postgresql.ru.net/manual/dblink.html

Потому что не устраивает

Вот почему когда спрашивают одно обязательно надо что другое ляпнуть
Видимо же преимущество FT - один раз создал таблицу указав требуемую безопасность(и это основное) и потом с ней работаешь и удобно пишешь запросы, а dblink требует постоянно креденшиналы соединения указывать + сам запрос обращания к таблице неудобно писать
P.S. у меня та же проблема -

а view или synonym чем не

а view или synonym чем не устраивают

Опции просмотра комментариев

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

Back to top

(С) Виктор Вислобоков, 2008-2023