首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

客户端连接SQLServer时,SQLServer函数host_id()生成的值是否是唯一的?解决办法

2012-01-09 
客户端连接SQLServer时,SQLServer函数host_id()生成的值是否是唯一的?我做过测试,同台机器多个连接返回值

客户端连接SQLServer时,SQLServer函数host_id()生成的值是否是唯一的?
我做过测试,同台机器多个连接返回值都不一样,不同网段相同ip连接返回值也不一样,按着SQL帮助上说的:返回工作站标识号(工作站标识号是连接到 SQL Server 的客户端计算机上的应用程序的进程 ID (PID))。

又有人说net_address 为SQL SERVER分配的虚拟MAC地址,唯一。host_id是将net_address翻译成对应的整数。

不知道是否可以说:因为SQL SERVER分配的虚拟MAC地址唯一,所以host_id是唯一的? 
 


[解决办法]
如果:当前数据库+主机+服务器用户或数据库用户不一样,则HOST_ID()返回的值不一样。
[解决办法]
HOST_ID() 返回工作站标识号。即客户端标识.

同一客户端,用不同用户,连接同一主机,所得标识号相同.
同一客户端,连接不同主机,所得标识号不同.
不同客户端,连接同一主机,所得标识号不同. 

[解决办法]

探讨
HOST_ID() 返回工作站标识号。即客户端标识.

同一客户端,用不同用户,连接同一主机,所得标识号相同.
同一客户端,连接不同主机,所得标识号不同.
不同客户端,连接同一主机,所得标识号不同.

热点排行