【问题标题】:Run PostgreSQL stored procedure from SQL Server从 SQL Server 运行 PostgreSQL 存储过程
【发布时间】:2016-04-28 07:51:24
【问题描述】:

我在 SQL Server 中有一个数据库,其中包含一天收集的数据,在 PostgreSQL 中有一个包含 OSM 数据的数据库。我需要修改收集的数据以便为我的用户创建报告。

现在,我想象从 SQL Server 调用 PostgreSQL 过程,将收集到的数据传递给 PostgreSQL,对这些数据执行一些操作,然后将另一个结果集返回给 SQL Server 以创建报告。

实现这一目标的“最有效”方法是什么?或者,更好的问题 atm,实现此功能的方法是什么?

我的想法是使用 PostgreSQL ODBC 驱动程序连接 SQL Server 和 PostgreSQL,然后将数据从 SQL Server 复制到 PostgreSQL 表,在 PostgreSQL 上运行该存储过程,并将数据返回到 SQL Server 结果表。但是,它不是计划任务。要传输到 PostgreSQL 的数据包含大约 2-3 百万行的纬度、经度和方位角,分析它们的函数需要每条记录一个,而不是一次全部。

【问题讨论】:

  • 我也想知道。但目前我使用 Proxy .net 应用程序将数据从一个移动到另一个。所以不确定是否存在直接方法,希望今天能学到一些新东西。顺便说一句,类似的应用程序,我有来自 MSQL 的 avl 数据并传递给 Postgress 以绘制地图。

标签: sql-server database postgresql stored-procedures database-connection


【解决方案1】:

我的方式是使用 C# 和 npgsql 连接 postgres。

我创建了一个应用程序:

  1. 每分钟检查一次 SQL Server。
  2. 检查 Postgres 以获取最后插入的 id。
  3. 使用新闻 ID 从 MSQL 创建数据集
  4. 将新记录插入 Postgres。
  5. 运行 postgres 存储过程以生成新数据
  6. 创建单独的 Web 服务以使用在 postgres 上生成的报告。

【讨论】:

  • 我被困在第一步。因为我是 MS BIDS 和 SSIS 的新手,你如何将表从 SQL Server 传输到 PostgreSQL?请问能详细点吗?
猜你喜欢
  • 2020-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-07
  • 2018-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多