2015-08-21 132 views
-2

我有一个SQL Server中的表,其中NT ID是存储在NT000002,NT0000003等获得用户名由NT ID

我想使用上面的id获取实际的用户名。我怎么做?

+0

是真的'NT'的userid – wiretext

+0

(http://www.skylinetechnologies.com/Insights/ [通过SQL Server查询Active Directory] Skyline-Blog/May-2013/Querying-Active-Directory-through-SQL-Server-Using) – lad2025

+0

@ lad2025它显示通过用户名获取用户,但我没有。我只有NTXXXXXX,我需要获取实际的用户名。 – if237912print

回答

0

检查下面的问题,这是你想要的吗?
查询1 -

Select p.loginame,p.nt_domain,p.hostname,p.nt_username 
from master.dbo.sysprocesses p (nolock) 

查询2-

Select d.name,p.hostname,p.nt_username,p.loginame,p.nt_domain 
from master.dbo.sysprocesses p (nolock) 
join master..sysdatabases d (nolock) on p.dbid = d.dbid 
and d.name <> 'master' and d.name <> 'msdb' 
+0

它给了我SQL服务器上的用户。但我所谈论的用户是Windows用户。我需要查询ActiveDirectory吗? – if237912print

+0

我想是这样的,如果用户信息存储在AD中,那么你需要创建一个到Active Directory接口的链接服务器,然后查询LDAP。 – Abhishek