SQL server 连接到 PostgreSQL 数据源

本文档介绍如何通过 ODBC 驱动程序将 SQL Server 连接到 PostgreSQL 数据库,适用于数据导入、导出及跨数据库查询。


一、安装 PostgreSQL ODBC 驱动程序(psqlODBC)

1. 使用 Stack Builder 安装(推荐)

  • 打开 Stack Builder(随 PostgreSQL 安装)

Application Name

  • 选择你的 PostgreSQL 安装
  • 在“数据库驱动”类别中,选中 psqlODBC 并安装

StackBuilder

2. 手动安装 ODBC 驱动程序

  • 访问 PostgreSQL ODBC 下载页面
  • 选择与操作系统匹配的版本(32位 / 64位)
  • 下载并运行安装程序,按提示完成安装

二、配置 ODBC 数据源

1. 打开 ODBC 数据源管理器

根据你安装的 SQL server 数据库位数选择:

  • 64位数据库:运行 C:\Windows\System32\odbcad32.exe
  • 32位数据库:运行 C:\Windows\SysWOW64\odbcad32.exe

2. 创建系统 DSN

  • 切换到 系统 DSN 选项卡

ODBC Data Source Administrator

  • 点击 添加,选择你安装的 PostgreSQL ODBC 驱动(如 PostgreSQL ANSI(x64))

Add Data Source

  • 填写以下信息:
    • 数据源名称:自定义,如 PostgreSQL_DSN
    • 描述:可选
    • 服务器:如 127.0.0.1
    • 端口:默认 5432
    • 数据库:如 testdb
    • 用户名 / 密码:PostgreSQL 登录凭证

Data Source Information

  • 点击 Test 测试连接,显示 Connection successful 表示成功
  • 点击 Save 保存配置

三、在 SQL Server 中使用 ODBC 数据源

方法一:通过 SSMS 创建链接服务器

  1. 打开 SQL Server Management Studio (SSMS)

  2. 登录 SQL Server,展开 服务器对象 -> 链接服务器

  3. 右键选择 新建链接服务器

  4. 在“常规”页:

    • 链接服务器名称:自定义,如 PostgreSQL_Link
    • 其他数据源:选择
    • 提供程序:选择 Microsoft OLE DB Provider for ODBC Drivers
    • 数据源:输入上一步配置的 DSN 名称,如 PostgreSQL_DSN
      SSMS连接PostgreSQL数据库
  5. 在“安全性”页:

    • 选择 使用此安全上下文建立连接
    • 输入 PostgreSQL 的 用户名密码
      SSMS连接PostgreSQL数据库
  6. 点击 确定 完成创建

方法二:使用 .NET Framework Data Provider for ODBC

适用于需要更灵活连接字符串的场景:

  • 打开 数据库导入和导出 程序
  • 选择用于 ODBC 的 .NET Framework 数据提供程序后随即显示的常规屏幕。
  • 使用 “连接字符串” 文本框输入 ODBC 数据源的连接信息。
  • 可以参考官网帮助文档信息获取帮助
# 我安装的驱动是 PostgreSQL ANSI(x64),连接信息如下
Driver={PostgreSQL ANSI(x64)};Server=127.0.0.1;Port=5432;Database=testdb;UID=user1;PWD=test123456

连接到PostgreSQL


四、查询 PostgreSQL 数据

-- 查询示例
SELECT TOP 100 
    *
FROM OPENQUERY(
    [PostgreSQL_Link],  -- 链接名称
    'SELECT * FROM test;'
);
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐