【发布时间】:2026-02-15 09:45:01
【问题描述】:
我们有一个使用 Windows 身份验证连接到 SQL Server 的客户端。他们使用服务器名称和端口号(不是 1433)进行连接。
到目前为止,我们所有的软件安装都使用 SQL Server 身份验证连接到 SQL Server,并使用服务器名称、用户名和密码进行连接。
我正在尝试在我的计算机上设置一个测试,以查看我是否可以使用此客户端使用的设置(即 Windows 身份验证)与我们的软件连接,并使用服务器名称和端口号。端口号对我来说是新的。
我遇到的问题是,无论 SQL Server 安装的端口号如何,以及我从我们的软件作为端口号传入的端口号如何,我都可以成功连接。所以我显然做错了什么,或者误解了它是如何工作的。任何帮助将不胜感激。
我的第一步是打开 SQL Server 配置管理器 > 网络配置 > 我的实例的协议 > TCP/IP > 属性。然后我打开 IP 地址选项卡,并将所有 IP1 - IPAll 部分的 TCP 端口更改为 41000(我把这个数字从我的拇指中吸了出来)。所有这些的 TCP 动态端口设置都是空白的。我申请、保存并重启了服务器。
在DbExpressTSQLConnection连接参数中,我传入:
TSQL1connection.Params.Add('OSAuthentication=True');
TSQL1connection.Params.Add('HostName='+SQL_server_name);
TSQL1connection.Params.Add('Port=123');
我在端口号中输入了什么似乎并不重要,或者我是否完全保留端口设置;我总是设法成功连接。
我只想让它成功连接到指定的端口号。
我正在使用 SQL Server 2014 和 Delphi XE8。
【问题讨论】:
标签: sql-server tcp database-connection port delphi-xe