1

您好,我有一个开发人员使用的项目

conn1 = new OleDbConnection("Provider=MSDAORA; Data Source=example;User ID=test;Password=test;Unicode=True");
        conn1.Open();

我对那个提供商 MSDAORA 有疑问,我认为它已经过时了所以我想用另一个没有 MSDAORA 的简单解决方案连接到我的数据库。

谢谢

4

3 回答 3

0

尝试使用 Oracle 提供程序,添加对 System.Data.OracleClient 程序集的引用

在本例中使用 OracleConnection

string connectionString = "...";
using (OracleConnection connection = new OracleConnection(connectionString))
{
    connection.Open();
    using(OracleCommand command = new OracleCommand(your query))
    {
       command.Connection = connection;
       command.ExecuteNonQuery();
    }
}
于 2012-07-06T15:46:29.717 回答
0

我使用了来自 oracle 的最新 ODAC (ODP.NET),并将以下字符串与 ADO.NET 实体数据模型一起使用。

<add name="Entities" connectionString="metadata=res://*/DataTypes.Model1.csdl|res://*/DataTypes.Model1.ssdl|res://*/DataTypes.Model1.msl;provider=Oracle.DataAccess.Client;provider connection string=&quot;DATA SOURCE=YOUR_SOURCE_HERE;PASSWORD=YOUR_PASSWORD_HERE;PERSIST SECURITY INFO=True;USER ID=YOUR_USER_ID_HERE&quot;" providerName="System.Data.EntityClient" />
于 2012-07-06T16:00:44.100 回答
0

看看您如何要求一个简单的解决方案,另一个可能是最快和最肮脏的选择是尝试更改连接字符串中的提供程序。这将使您不必返回代码并添加对程序集的引用。

换句话说,在您的原始示例中,您的连接字符串是:

提供者=MSDAORA;数据源=example;用户 ID=test;密码=test;Unicode=True

尝试将提供程序更新为

提供者= OraOLEDB.Oracle;数据源=example;用户 ID=test;密码=test;Unicode=True

有关更多信息,请查看http://www.c-sharpcorner.com/UploadFile/nipuntomar/connection-strings-for-oracle/

于 2014-07-08T18:08:28.957 回答