【问题标题】:Connection to SQL Server database doesn't work online无法联机连接到 SQL Server 数据库
【发布时间】:2019-12-24 16:18:42
【问题描述】:

我在 Visual Studio 中有一个项目,该项目已连接到我的 SQL Server 数据库。

当我在程序中本地尝试时,我会得到一个包含实际数据的网站,该数据位于我的数据库中。

但是当我发布同一个项目并将这些文件插入到我的 .NET 实例(Web 服务器)的文件夹中时。我会得到这个网站,在那里我可以看到 html 代码等的所有结果,但没有连接到我的数据库。

<connectionStrings>
    <add name="xxx" 
         connectionString="server=<serverlink>;database=DB_xxx_SQL;Persist Security Info=True;uid=xxx;pwd=xxx" />
    <add name="zzz" 
         connectionString="server=<serverlink>;database=DB_xxx_SQL;Persist Security Info=True;uid=xxx;pwd=xxx"/>
</connectionStrings>

【问题讨论】:

  • 我认为你需要在应用程序运行的地方安装 SQL Express,让 SQL 引擎托管你的数据库文件,这些文件可以通过连接字符串访问
  • 您也在哪里发布项目?听起来您发布的服务器也无法访问数据库服务器。
  • 我将其发布到 WebServer 的 .NET 实例。

标签: .net sql-server visual-studio web-config


【解决方案1】:

通过删除 Persist Security Info=True;

尝试连接字符串
<connectionStrings>
    <add name="xxx" 
         connectionString="server=<serverlink>;database=DB_xxx_SQL;uid=xxx;pwd=xxx" />
    <add name="zzz" 
         connectionString="server=<serverlink>;database=DB_xxx_SQL;uid=xxx;pwd=xxx"/>
</connectionStrings>

【讨论】:

    【解决方案2】:

    对我来说,连接字符串的配置和访问权限看起来都不错。我总是会添加一个提供者名称

    <connectionStrings>
         <add name="xxx" 
           connectionString="Data Source=yourservername;Initial Catalog=yourdatabasename;Integrated Security=SSPI;" 
           providerName="System.Data.SqlClient"  />
    </connectionStrings>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-03
      • 2017-12-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多