sys.sysprocesses中host_name和hostname之间的SQL差异

时间:2017-11-21 09:07:09

标签: sql sql-server

这两个查询之间有什么区别:

select hostname,* from sys.sysprocesses where spid = @@SPID;
select host_name()

可能是第二个,用户执​​行查询所需的权限较少。

1 个答案:

答案 0 :(得分:1)

从权限的角度来看没有区别。两个查询都可以完全没有权限执行。

来自sys.sysprocesses (Transact-SQL)

  

如果用户对服务器具有VIEW SERVER STATE权限,则为该用户   将在SQL Server实例中看到所有正在执行的会话;   否则,用户只会看到当前会话

在这两种情况下,范围只是当前会话,因此没有区别,也不需要许可。