Триггер Postgresql для записи данных в SQL Server через ODBC? - PullRequest
1 голос
/ 28 января 2012

Можно ли написать триггер Postgresql, который может записывать данные в базу данных SQL Server 2008? У меня есть Windows Postgresql DB (9.1) и у меня есть триггер, который записывает данные в таблицу с именем finaldata. Могу ли я иметь триггер для таблицы finaldata, который будет записывать данные в SQL Server через ODBC или какой-либо другой вариант подключения?

Я застрял с этим! Должен ли я попробовать с plpgsql или на другом языке лучший вариант? Мой стандартный метод написания функции:

CREATE OR REPLACE FUNCTION "public"."finaldata" () RETURNS trigger AS
$body$
DECLARE
BEGIN

  "Connect to SQL Server and write data to single table newdata "

END;
$body$
LANGUAGE 'plpgsql'

Ответы [ 2 ]

1 голос
/ 30 января 2012

9.1 поддерживает сторонние таблицы, которые позволяют вам запускать операции выбора / обновления и т. Д. В Postgresql для таблиц, которые фактически находятся в других базах данных.

Таким образом можно использовать триггер postgresql (на любом языке).

Для ODBC доступна внешняя оболочка данных, которую можно использовать для подключения к SQL Server.

Внешние таблицы Postgresql

Внешние данные ODBCУпаковочный

1 голос
/ 29 января 2012

Существует DBI-Link , которую вы можете использовать с plperl и драйвером ODBC для доступа к SQL Server (не проверено). Однако имейте в виду, что для правильного управления транзакциями (то есть, что данные на сервере SQL всегда отражают данные на сервере PostgreSQL) вам необходимо реализовать протокол двухфазного принятия или что-то подобное самостоятельно.

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