使用时连接字符串不起作用(数据源 =.\SQLExpress)

Posted

技术标签:

【中文标题】使用时连接字符串不起作用(数据源 =.\\SQLExpress)【英文标题】:Connection string is not working while using (data source =.\SQLExpress)使用时连接字符串不起作用(数据源 =.\SQLExpress) 【发布时间】:2020-01-26 15:54:34 【问题描述】:

我正在使用带有 C# 和 SQL Server 的 ASP.NET

我必须使用 App_Data 文件夹中的 .mdf 文件,因为我无权访问 SQL 数据库。

仅当 T 使用 .\SQLExpress 时,此连接字符串才有问题

<connectionStrings>
        <add name="msscEduConnectionString" 
             connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\MsscEdu.mdf;Integrated Security=True;" 
             providerName="System.Data.SqlClient"/>
      </connectionStrings>

此连接字符串不起作用,显示附加数据库错误

我们有另一个站点,其连接字符串与此类似,但名称不同,但运行良好。

这是另一个站点的连接字符串

<connectionStrings>

  <add name="msdschoolkjConnectionString1" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\msdschoolkj.mdf;Integrated Security=True;User Instance=True"
   providerName="System.Data.SqlClient" />
 </connectionStrings>

如果我使用以下连接字符串,它只适用于我的计算机,而不适用于服务器

<connectionStrings>
    <add name="msscEduConnectionString" 
         connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\MsscEdu.mdf;Integrated Security=True" 
         providerName="System.Data.SqlClient"/>
  </connectionStrings>

有人可以帮忙吗?

【问题讨论】:

如果可行,为什么不直接使用 localdb?你有安装 SQLExpress 吗?您不应该指望在开发和生产之间使用相同的连接字符串,因此只需计划在部署期间转换该设置。 因为我写的是本地只在我的电脑上工作而不是在服务器上。 我知道。您不会在生产中使用 localdb,但这没关系。您通常在部署期间将连接字符串更改为指向生产环境。 您是否尝试过硬编码 DB 文件的路径?而不是 |DataDirectory|? 问题出在 .\sqlexpress 上,即使在我的电脑上也无法正常工作,而 .\sqlexpress 在我们拥有并安装的其他网站上运行良好 【参考方案1】:

在你的 web.config 文件中试试这个

<connectionStrings>
  <add name="ConnectionName"
    connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|DatabaseName.mdf;Integrated Security=True;User Instance=True"
    providerName="System.Data.SqlClient" />
</connectionStrings>

【讨论】:

无法打开,因为是852版本。本服务器支持663及更早的版本。 参考这个网址可能会有所帮助link 我在 SQL Server 2008 r2 上的另一台计算机上重新创建了数据库并添加了用户实例,它工作正常,谢谢

以上是关于使用时连接字符串不起作用(数据源 =.\SQLExpress)的主要内容,如果未能解决你的问题,请参考以下文章

VS生成的连接字符串不起作用,以及它的任何变体

连接移动数据时 Ajax 不起作用

Azure 交换部署槽粘性设置不起作用

连接字符串不起作用[重复]

字符串连接在猪中不起作用

当用户输入通过来自另一个组件的道具的文本时,在反应 js 中不起作用