2010-05-10 42 views
0

我想了解以下2個連接字符串之間的區別。 一個使用servername \ instancename,另一個使用服務器ip地址。瞭解用於asp.net的Sql Server連接字符串

我可以指定端口號「服務器名\實例名」。 我知道你可以指定ip地址的端口號,比如'10.0.0.1,xxx'。

感謝,

Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True; 

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True; 

回答

1

很簡單:

  • 如果你只有server=(machinename)server=(ipaddress)那麼你連接到SQL Server的默認實例在該機器上(沒有名字的實例)

  • 如果您有server=(machinename)\InstanceName,那麼您將連接到名爲inst的該機器

每個物理服務器機可以有一個SQL Server默認實例,以及任意數量的命名實例的SQL Server的ANCE(名稱必須是不同的,很明顯)。

要連接到命名實例,並指定一個非標準的端口,在這裏使用的語法如下:

server=(machinename)\InstanceName,xxxx 

server=(ip-address)\InstanceName,xxxx 

其中xxxx表示您要使用的端口。

+0

我明白了,我怎麼指定,如果我想使用(機器名)\實例在ConnectionString端口號? 感謝 – Eatdoku 2010-05-10 05:16:48

+1

燁它工作的感謝, 我在與命名實例指定端口的問題,後來才知道,這是因爲錯誤的端口號是提供。 – Eatdoku 2010-05-10 16:14:25

1

大多數情況下,它並不重要,如果你沒有重複的實例。

例如,SQL支持在同一個盒子作爲隔離正在運行的實例的方式多個實例。大多數情況下,你永遠不會這樣做,因此可以避免在連接字符串中使用IP地址。如果由於某種原因,您需要在同一臺計算機上運行多個SQL Server實例,則需要指定實際要連接的實例。

This covers it in more detail.