ODBC驱动

本文档将介绍如何配置数据源及通过 ODBC 驱动访问 PostgreSQL。

配置数据源

用户下载安装 ODBC 驱动后,需要配置数据源才可以使用。下述以 Windows 系统为例介绍配置步骤。

  1. 打开【控制面板】->【管理工具】->【数据源(ODBC)】,点击 添加 按钮

    添加数据源

  2. 选择 PostgreSQL Unicode,点击 完成 按钮

    创建数据源

  3. 设置数据源,按图中提示完成选项

    配置数据源

  4. 点击 Test 按钮,提示连接成功后,点击 Save 按钮保存配置

示例

以下示例通过 C# 对接 ODBC 进行基础的增加和查询操作。

  1. 连接到本地 PostgreSQL 实例并准备数据库 sample 和表 test,将其映射到 SequoiaDB 已存在的集合 sample.employee

    1. $ bin/psql -p 5432 sample
    2. psql (9.3.4)
    3. Type "help" for help.
    4. sample=# create foreign table test (name text, id numeric) server sdb_server options (collectionspace 'sample', collection 'employee', decimal 'on');
    5. CREATE FOREIGN TABLE
    6. sample=# \q
  2. 添加数据源,配置 DSN(Data Source Name) 为”PostgreSQL35W”,并配置 Database 为”sample”,具体步骤见上一节

  3. 新建项目,以 Visual studio 2013 开发环境为例,点击工具栏【文件】->【新建】->【项目】,新建一个 Visual C# 的控制台应用程序

  4. 输入示例代码

    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. using System.Data.Odbc;
    6. namespace ConsoleApplication
    7. {
    8. class Program
    9. {
    10. static void Main(string[] args)
    11. {
    12. string connStr = "DSN=PostgreSQL35W";
    13. OdbcConnection conn = new OdbcConnection(connStr);
    14. conn.Open();
    15. // Insert
    16. OdbcCommand cmd = conn.CreateCommand();
    17. cmd.CommandText = "INSERT INTO test(name, id) VALUES ('Steven', 1)";
    18. cmd.ExecuteNonQuery();
    19. // Query
    20. cmd.CommandText = "SELECT * FROM test";
    21. OdbcDataReader odr = cmd.ExecuteReader();
    22. while (odr.Read())
    23. {
    24. for (int i = 0; i < odr.FieldCount; i++)
    25. {
    26. Console.Write("{0} ", odr[i]);
    27. }
    28. Console.WriteLine();
    29. }
    30. conn.Close();
    31. Console.Read();
    32. }
    33. }
    34. }
  5. 点击 【调试】->【开始执行】,得到运行结果

    1. Steven 1