2010-05-10 31 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.