使用Npgsql提供程序与OLE数据库连接

时间:2012-03-29 11:02:10

标签: c# connection-string ole

所以我有以下连接字符串,这导致我的问题。我正在尝试编写一个能够与数据库无关的应用程序(困难但并非不可能),我已经开始在PostgreSQL上测试它但是我似乎无法使用OLE连接来使用它。从我所看到的情况来看,这是完全可能的。

我使用PostgreSQL的特定类完成了所有工作,但这使用了Npgsql类型而不是通用的OLE类型。

E.g。     private NpgsqlCommand m_postgreSQLDatabaseCommand;

而不是     私人OleDbCommand m_oleDatabaseCommand;

在我的情况下,这是不可接受的。

我尝试简单地更改连接字符串以使用Npgsql提供程序,但我不确定我是否正确使用它。我收到以下错误:

连接字符串:

<add name="ApplicationPostgresDefault" 
    connectionString="Server=127.0.0.1;Port=5432;
    Database=myDatabase;
    User Id=myUser;
    Password=myPass; 
    Provider=Npgsql"
/>

错误:

The 'Npgsql' provider is not registered on the local machine.

可以做些什么来解决这个问题?

如果我正确地获得了提供者,我将能够像使用Npgsql对象那样与PostgreSQL进行通信吗?

2 个答案:

答案 0 :(得分:2)

本地计算机没有安装提供程序。

无论如何,我建议使用本机客户端而不是OleDb:

http://npgsql.projects.postgresql.org/

http://connectionstrings.com/Providers/npgsql

这是你的选择

答案 1 :(得分:0)

您在;之后错过了Npgsql吗?