2012-03-24 64 views
0

嗨,我是C#的新手,我对使用oledb连接到我的sql server 2008数据库时连接字符串中需要提供的字段有些困惑,特别是一个其中。连接字符串中的提供者字段oledb

“Provider”字段确实给我带来了问题,部分原因是我不确定它的功能。我已经尝试了两种不同的供应商字符串,他们都回来用了同样的错误:

的“System.Data.SqlClient的提供者未注册在本地计算机上

或者

的” Microsoft.Jet .OLEDB.4.0" 供应商未注册的本地机器

谁能告诉我这是什么意思呢?还有,我的任务要求我不使用任何另外的安装,有一个供应商,是默认?

上谢谢

+0

对于为AnyCPU(或x64)编写的应用程序,“Microsoft.Jet.OLEDB.4.0”提供程序在64位计算机上不可用,而“System.Data.SqlClient”根本不是oledbprovider。这是所有SQLServer相关类的名称空间。请查看[www.connectionstrings.com](http://www.connectionstrings.com)。我想你应该解释你试图连接哪个数据库并显示你的连接字符串 – Steve 2012-03-24 23:11:33

回答

0

Microsoft Jet引擎是Microsoft Access中使用的数据库引擎。该错误仅表示所需的Access版本未安装,因此,您的应用程序无法打开OLEDB驱动程序。

通常,您应该使用System.Data.SqlClient.SqlConnection类而不是System.Data.OleDb.OleDbConnection类来连接到SQL Server 2008数据库。连接字符串应该是much simpler

相关问题