Postgresql触发器通过ODBC将数据写入SQL Server?

时间:2012-01-28 15:58:38

标签: sql-server postgresql triggers odbc

是否可以编写可以将数据写入SQL Server 2008数据库的Postgresql触发器?我有一个Windows Postgresql DB(9.1),并且有一个现有的触发器,可以将数据写入名为finaldata的表中。然后,我可以在finaldata表上有一个触发器,它将通过ODBC或其他连接选项写入SQL Server吗?

我坚持这个!我应该尝试使用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 个答案:

答案 0 :(得分:1)

DBI-Link可以使用plperl和ODBC驱动程序来访问SQL Server(未经测试)。但请注意,对于正确的事务管理(即SQL服务器上的数据始终反映PostgreSQL服务器上的数据),您需要自己实现two-phase commit protocol或类似的东西。

答案 1 :(得分:1)

9.1支持外部表,允许您在Postgresql中针对实际位于其他数据库中的表运行选择/更新等。

这样可以使用postgresql触发器(使用任何语言)。

有一个可用于ODBC的外部数据包装器,可用于连接到SQL Server。

Postgresql Foreign Tables

ODBC Foreign Data Wrapper