簡體   English   中英

C#ADO.NET SQL Server連接

[英]C# ADO.NET SQL Server connection

當我做類似的事情

string connString = @"Data Source=localhost\SQLEXPRESS;Database=TestDB;Integrated Security=True;";
string sql = @"select name, age from dbo.Student";

SqlDataReader reader;

SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd;

conn.Open();
cmd = new SqlCommand(sql, conn);

reader = cmd.ExecuteReader();

當我在本地計算機上運行名為localhost\\SQLEXPRESS SQL Server時。 應用程序如何知道我正在連接到本地數據庫,因為那只是一個名稱,而不是IP地址之類的地址? 當我嘗試將數據源更改為類似於“ 127.0.0.1”時,為什么它不起作用?

我是ASP.NET的新手。 感謝您的評論。

應用程序如何知道我正在連接到本地數據庫,因為那只是一個名稱,而不是IP地址之類的地址?

通過與在地址欄中鍵入stackoverflow.com來訪問stackoverflow.com的方式相同。 它會進行DNS查找,並為您自己解析IP地址。 您可以根據需要自己輸入IP地址(實例名稱,請參閱下一點),它仍然可以使用。 localhost將解析為127.0.0.1

我,為什么當我嘗試將數據源更改為“ 127.0.0.1”之類時它為什么不起作用?

因為只給了它IP,所以它將成功到達您的計算機-但您省略了SQL Server實例名稱。 它應該看起來像這樣:

數據源= 127.0.0.1 \\ SQLEXPRESS;數據庫= TestDB;集成安全性=真;

(注意“ SQLExpress”)

關於您是否希望更好地處理DNS有很多文章,您至少應該對以下內容有基本的了解: https : //www.thewindowsclub.com/dns-lookup

在c驅動器上,假設已安裝Windows,請轉到並在記事本c:\\ Windows \\ System32 \\ drivers \\ etc \\ hosts中打開此文件

你會在里面看到

127.0.0.1本地主機

這會將IP地址127.0.0.1映射到本地主機

暫無
暫無

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

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