Sql-Server

通過 C# 連接到 SQL Server 實例

  • November 16, 2013

我做了一個程序,使用 c# 和帶有 sql 身份驗證的 sql server。它在我的設備中正常工作,但在使用 Innosetup 製作程序設置文件 .exe 副檔名後,我無法連接到我的數據庫。

我已經嘗試在腳本中導出我的數據庫,並在另一台設備上執行該腳本,但它不起作用。我想我需要創建埠或其他東西來連接到這個數據庫,或者在我的 app.config 中更改伺服器名稱

這是我的連接字元串

<connectionStrings>
   <add name="MarketDatabaseEntities" connectionString="metadata=res://*/AmanjCenter2Entity.csdl|res://*/AmanjCenter2Entity.ssdl|res://*/AmanjCenter2Entity.msl;provider=System.Data.SqlClient;provider connection string="data source=RABAR;initial catalog=MarketDatabase;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
 </connectionStrings>

您可能需要使用 SQL Server 配置管理器來啟用 TCP/IP 連接。

預設為禁用,如下所示。您必須啟用 TCP/IP 以允許遠端連接到 SQL Server 電腦。

在此處輸入圖像描述

如 Max Vernon 在他的回答中的螢幕截圖所示,您必須允許遠端連接的 TCP/IP 連接。

此外,如果您不允許流量到預設實例 (TCP 1433),也會阻止連接。

如果您嘗試連接到非預設(命名)實例,則還必須打開該實例的埠。如果您的非預設實例的連接字元串使用埠號,這就足夠了,但是如果您在連接字元串中使用實例的名稱,則必須打開 UDP 1434 並確保 SQL Browser 服務已啟動。

禁用 Windows 防火牆和測試可能有助於快捷方式故障排除 - 如果它在禁用防火牆的情況下工作,您知道它在埠開口中。

引用自:https://dba.stackexchange.com/questions/49974