如何在 SQL Server 连接字符串中指定端口号?
Posted
技术标签:
【中文标题】如何在 SQL Server 连接字符串中指定端口号?【英文标题】:How to specify a port number in SQL Server connection string? 【发布时间】:2011-07-14 18:18:05 【问题描述】:我在 SQL Server Management Studio 中使用以下连接字符串。连接失败:
mycomputer.test.xxx.com:1234\myInstance1
但是下面的就可以了:
mycomputer.test.xxx.com\myInstance1
那么如何在连接字符串中指定端口号呢?
【问题讨论】:
与***.com/q/89576相关 【参考方案1】:使用逗号指定 SQL Server 的端口号:
mycomputer.test.xxx.com,1234
指定端口时不必指定实例名称。
http://www.connectionstrings.com/ 有更多示例。它救了我好几次。
【讨论】:
每个实例必须在一个单独的端口上,所以 Sql server 中的 port=instance。不过,直到现在我才知道这个 ",port" - 谢谢。 @Daniel:是的,您需要指定端口或实例。 注意:当指定端口时,实例名称被忽略。所以“mycomputer.test.xxx.com\AnyOldRubbish,1234”仍然有效。 我只是浪费了将近一整天的时间试图弄清楚这一点。微软应该为此被枪杀。他们不仅自己创建了一个用于分隔端口地址的全新约定(他们不能像世界其他地方一样只使用冒号),而且他们也懒得在 SQL 中对其进行测试Server Management Studio,因此您会得到一些关于正在发生的事情的提示。 如果默认 (MSSQLSERVER) 实例未在 1433 上运行,这将如何工作?【参考方案2】:对于 JDBC,正确的格式略有不同,如下所示:
jdbc:microsoft:sqlserver://mycomputer.test.xxx.com:49843
注意冒号而不是逗号。
【讨论】:
我已经从 C# 转向 Java,这个答案拯救了我。再次。 太棒了,很高兴它有帮助。 JDBC 连接字符串的 Java 文档并不完全直观。不知道为什么它也不同,这很烦人。【参考方案3】:指定端口的 SQL 的正确 SQL 连接字符串是在 ip 地址和端口号之间使用逗号,如下模式:xxx.xxx.xxx.xxx,yyyy
【讨论】:
以上是关于如何在 SQL Server 连接字符串中指定端口号?的主要内容,如果未能解决你的问题,请参考以下文章
如何在表中指定基于 SQL Server 中另一列的计算列?
如何在 SQL Management Studio 中指定不同的端口号?