Как подключиться из dblink на другой сервер? - PullRequest
1 голос
/ 23 сентября 2019

Мне нужно соединение с моим сервером на другом, но это соединение Появляется следующая ошибка.пример кода.

CREATE OR REPLACE FUNCTION attBD() 
RETURNS TRIGGER AS 
$attBD$
BEGIN
    SELECT dblink_connect('myconect', 'hostaddr=***.**.**.** port=5432 dbname=postgres user=postgres password=***');

    IF ( TG_OP = 'SELECT') THEN

        SELECT * FROM DBLINK
       ('myconect', 'select*from teste_GB')
        as func2 (id Integer,
              nome varchar);
              RETURN NEW;

              ELSE IF (TG_OP = 'INSERT') THEN

              SELECT dblink_exec
              ('myconect',
            'INSERT INTO teste.teste_replica(id, nome,)
            VALUES
            (new.id, new.nome)');
            RETURN NEW;

               ELSE IF ( TG_OP = 'UPDATE' ) THEN

            SELECT dblink_exec
              ('myconect',
            'UPDATE teste.teste_replica SET id=new.id , nome= new.nome, 
            WHERE id = new.id)');
            RETURN NEW;

            ELSE IF ( TG_OP = 'DELETE') THEN

            SELECT dblink_exec
              ('myconect',
            'DELETE from teste.teste_replica WHERE id = old.id');
            RETURN OLD;

    END IF; END IF; END IF; END IF;
    RETURN NEW;
END;
$attBD$ LANGUAGE 'plpgsql';

При выполнении кода появляется следующее сообщение: ОШИБКА: у запроса нет места назначения для данных результата. СОВЕТ: Если вы хотите отменить результаты SELECT, вместо этого используйте PERFORM.Что мне делать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...