簡體   English   中英

通過asp.net和c#連接到另一個網絡上的SQL Server數據庫

[英]Connect to a SQL Server database on another network via asp.net and c#

我有一個客戶數據庫,該數據庫保存在我們本地網絡上的SQL Server上。 我想創建一個客戶門戶,該門戶將在通過另一家公司托管的我們的網站上。 我將如何連接到該SQL Server數據庫?

授予網站主機對sql服務器的訪問權限。 假設使用Sql Server 2008; 轉到管理工作室,然后在對象資源管理器窗口中右鍵單擊服務器(根),然后轉到屬性。 您可以從那里管理權限。 另外,它將顯示連接字符串中要使用的“服務器”(類似於[server]\\SQLEXPRESS ,可以在本地和遠程使用)。

在網站上(最好在web.config中)創建一個正確的連接字符串 ,以用於與數據庫的所有連接。 然后,您可以通過以下方式從數據層獲取此連接字符串:

ConfigurationManager.ConnectionStrings["ConnString_Name"].ConnectionString;

除了正確的連接字符串外,您還需要確保該網站可以與您的SQL Server通信。 如果您有防火牆,則如果端口被阻止,則需要對其進行配置。

替代方法是創建一個托管在DMZ區域上的Web服務,該區域將在內部與sql Server通信。 該網站(由第三方托管)將通過此Web服務進行通信以獲取數據(您可以設置身份驗證,以便只有那些有權利的人才能使用此Web服務)。 通過這種方法,您不會直接暴露內部sql服務器。

該答案基於一些假設,因為問題並未提供所有必需的信息。

為此,您需要為連接對象設置ConnectionString屬性。 例如

Data Source=yourIP;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;

這是MSDN鏈接connectionStrings

這是Web.Config中SQLExpress連接字符串的示例

<connectionStrings>
   <add 
      name="LocalSqlServer" 
      connectionString="data source=.\SQLEXPRESS;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;" 
      providerName="System.Data.SqlClient"
   />
</connectionStrings>

有一個關於Code Project的初學者指南,被評為5分,它將為您提供入門所需的一切。

但是,在開始使用代碼之前,建議您首先測試與SQL Server Management Studio的連接。 確保您可以連接並查詢一些數據,否則可能會在第一次嘗試使用代碼實現此目的時面臨更多的困惑。

要從C#.NET連接到SQL Server,您需要創建一個如下的連接字符串:

私有SqlConnection連接; 私有字符串connectionString = @“ Server =(local);數據庫= Embedding_SQL_Test;用戶ID = sa;密碼= 123”; connection =新的SqlConnection(connectionString);

接下來,使用上面創建的SqlConnection對象創建一個“ SqlCommand”,如下所示:

SqlCommand cmd =新的SqlCommand(“從客戶那里選擇* *,其中CustomerID = @Cid”,連接);

此處顯示的SQL查詢可以替換為SELECT,INSERT,UPDATE查詢等。

接下來要在數據庫中執行SQL查詢,您可以使用以下方法:ExecuteReader-執行SELECT查詢ExecuteNonQuery-執行INSERT,DELETE,UPDATE和SET語句。

這是關於如何從C#連接到SQL Server數據庫以及如何在數據庫中執行SQL查詢的簡短描述。 有關連接字符串,方法及其參數的詳細信息,請檢查以下鏈接:( http://www.shahriarnk.com/Shahriar-NK-Research-Embedding-SQL-in-C-Sharp-Java.html )還將找到有關如何將參數傳遞給SQL查詢以及調用存儲過程的詳細信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM