【问题标题】:problem connecting to access database in asp.net 2.0在 asp.net 2.0 中连接访问数据库的问题
【发布时间】:2010-08-28 18:15:54
【问题描述】:

您好,我正在尝试从访问数据库中获取数据集

我正在使用这个连接字符串:

<connectionStrings>
    <add name="SiteConnString" connectionString="Data Source=c:\inetpub\vhosts\db\mainDB.mdb" 
         providerName="Microsoft.Jet.OLEDB.4.0" />
</connectionStrings>

这是我对 SqlHelper 的调用:

myDataSet = SqlHelper.ExecuteDataset(connString, CommandType.Text, strSQL);

我得到的错误是:

在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定的实例)

【问题讨论】:

  • 只是猜测,但你有 connString 和 SiteConnString。
  • @Remou:一个是局部变量或类变量,另一个是配置条目的键。不幸的是,这可能不是问题所在。

标签: asp.net sql ms-access connection-string


【解决方案1】:

providerName 属性需要一个 ADO.NET 提供程序类名称。尝试像这样更改您的连接:

<connectionStrings>
    <add name="SiteConnString"
         connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\vhosts\db\mainDB.mdb"
         providerName="System.Data.OleDb" />
</connectionStrings>

连接字符串格式的一个非常方便的参考是http://connectionstrings.com

【讨论】:

  • 我实际上已经尝试过了,但这是我使用此连接字符串时遇到的错误异常详细信息:System.ArgumentException:不支持关键字:'provider'。
  • @guy - 在这种情况下,SqlHelper 必须是一个设计为仅支持 SQL Server 的类,而“Provider”在连接字符串中确实不合适。您可能会从 System.Data.OleDb 类中获得更好的效果,尤其是它的数据适配器。以下是相关文档和示例的链接:msdn.microsoft.com/en-us/library/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-29
  • 2013-05-23
相关资源
最近更新 更多