【问题标题】:Is it required that postgresql is installed on every client computers when retriveing or storing data?检索和存储数据时是否需要在每台客户端计算机上安装 postgresql?
【发布时间】:2015-03-28 09:43:59
【问题描述】:

我需要你的帮助来回答一个问题。 我编写了一个基本的 c# 可移植 exe 应用程序,该应用程序在服务器计算机上使用 Access 数据库。在网络上,有一些客户端计算机运行此应用程序,并通过此数据库检索和存储数据,该数据库位于服务器计算机上的共享文件夹中。每个客户端计算机都可以使用此连接字符串访问我的数据库:

@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source =\\ANKFILESERVER1\aractakip\DatabaseAd.accdb

到目前为止,没有任何问题。但众所周知,Access (Oledb) 数据库保存数据的能力有限,因为我担心有人更改或删除我的数据库文件 - 为所有人验证 - 我决定使用另一个数据库平台,如 postgresql。 我的问题是,如果我在服务器计算机上安装 postgresql 并迁移我的数据库表,是否每台客户端计算机都需要安装 postgresql 才能访问我的数据库表?如果是,我的连接字符串应该是什么? 提前致谢。

【问题讨论】:

    标签: c# database postgresql


    【解决方案1】:

    您需要在通过 MS Access 连接到 PostgreSQL 的每台计算机上安装一个客户端驱动程序(例如 psqlODBC),是的。

    您可以单独安装 psqlODBC,也可以使用主 PostgreSQL 安装程序。单独的 psqlODBC-only 安装程序是一个可以部署在 Active Directory 上的 msi,使管理更容易。

    psqlODBC 文档中介绍了连接选项。

    Microsoft Access 是真正为 Microsoft JET / OLEDB 引擎编写的,并与 Microsoft SQL Server 进行通信。它适用于 PostgreSQL,但不能完全“理解” PostgreSQL 的所有功能。它还以完全非 SQL 标准的方式做一些可以在 MS SQL 上工作但在 PostgreSQL 上不工作的事情。因此,将 MS Access 与 PostgreSQL 一起使用可能会很尴尬,因为 Access 之类的东西并没有真正正确地支持 SEQUENCE。不过请注意,我从 Office 2008 开始就没有使用过 Access,因此情况可能有所改善。

    【讨论】:

    • 没有克雷格,我不一定需要我的旧记录来迁移,但是它使我的工作更容易-我的主要问题是客户端计算机是否可以在安装了 postgresql 的某个服务器计算机上的数据库中工作,即使他们没有安装 postgresql。
    • @Misto:您不必在每个客户端上都安装 PostgreSQL 数据库服务器来让该客户端连接到某个 PostgreSQL 服务器。每个客户端都需要一个驱动程序,例如 psqlODBC,因为客户端和服务器必须使用相同的语言。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-10
    • 2011-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多