5

我尝试使用 C# 运行查询,但遇到以下问题

ConnectionString 中未指定 OLE DB 提供程序。例如,'Provider=SQLOLEDB;

我的代码

string strConString = System.Configuration.ConfigurationManager.ConnectionStrings["WorkflowConnStr"].ConnectionString.ToString(); 
string sqlstr = "select * from table"        
OleDbConnection myConnection = new OleDbConnection(strConString);
try
     {myConnection.Open();}
catch (Exception err) 
     { System.Diagnostics.Debug.WriteLine(err.Message); }

OleDbCommand myCommand = new OleDbCommand(sqlstr, myConnection);
OleDbDataReader reader = myCommand.ExecuteReader();

网络配置

<add name="WorkflowConnStr" connectionString="Data Source=Server;Initial Catalog=DBName;user id=usr;password=password" providerName="System.Data.OleDb.OleDbConnection"/>

有什么建议吗?

4

2 回答 2

8

尝试将此添加到您的连接字符串中,

Provider=SQLNCLI10.1

就是这样;

<add name="WorkflowConnStr" connectionString="Data Source=Server;Initial Catalog=DBName;user id=usr;password=password;Provider=SQLNCLI10.1" providerName="System.Data.OleDb.OleDbConnection"/>
于 2014-04-21T07:38:09.980 回答
1

使用SqlConnection而不是OleDbConnection.

于 2018-07-03T11:24:53.497 回答