我的应用程序有一个非常有趣的问题,我收到如下错误: System.ArgumentException:未在ConnectionString中指定OLE DB提供程序。一个例子是'Provider = SQLOLEDB;'。
但是,当我尝试在我的连接上将提供程序表示为Provider = SQLOLEDB.1或Provider = SQLOLEDB时,我收到另一个错误,指出无效关键字'Provider'。
但有一件事我注意到,我所针对的计算机有2个不同的数据库系统会导致这个错误吗?
知道如何解决这个问题吗?
此致
答案 0 :(得分:1)
假设您使用的是ADO.NET,如果您想使用不同的数据库系统,那么您还需要更正DbConnection,而不仅仅是连接字符串。
请注意,您不能将SqlConnection
用于OLEDB,而是需要使用System.Data.OleDb.OleDbConnection
。
答案 1 :(得分:0)
看起来你错过了连接字符串的一些部分 - 试试这些
常规连接字符串:
strConnect = _T("Provider=sqloledb;Data Source=MyServerName;"
"Initial Catalog=MyDatabaseName;"
"User Id=MyUsername;Password=MyPassword;");
命名实例连接字符串:
strConnect = _T("Provider=sqloledb;Data Source=MyServerName\MyInstanceName;"
"Initial Catalog=MyDatabaseName;User Id=MyUsername;Password=MyPassword;");
值得信赖的安全:
strConnect = _T("Provider=sqloledb;Data Source=MyServerName;"
"Initial Catalog=MyDatabaseName;"
"Integrated Security=SSPI;");
从这里http://www.codeproject.com/KB/database/connectionstrings.aspx#OLE DB SqlServer