SQL Server 2005从用户名获取登录名

Nim*_*ory 4 sql-server sql-server-2005

如何为特定数据库指定用户名并在查询中获取该用户的登录名?

谢谢.

bdu*_*kes 9

使用安全目录视图,您可以获取数据库和服务器主体信息,如下所示:

USE [database_name]

SELECT sp.name AS login_name
FROM sys.server_principals sp
JOIN sys.database_principals dp ON (sp.sid = dp.sid)
WHERE dp.name = 'user_name'
Run Code Online (Sandbox Code Playgroud)

我无法找到能够为所有用户提供的视图,无论数据库是什么,因此需要在登录数据库的上下文中运行.