SUSER_NAME (Transact-SQL)
Применимо к: SQL Server Управляемый экземпляр SQL Azure Azure Synapse Analytics (только бессерверный пул SQL) конечная точка аналитики SQL в хранилище Microsoft Fabric в Microsoft Fabric
Возвращает идентификационное имя учетной записи пользователя.
Соглашения о синтаксисе Transact-SQL
Синтаксис
SUSER_NAME ( [ server_user_id ] )
Аргументы
server_user_id
Идентификационный номер входа пользователя. server_user_id, который является необязательным, является int. server_user_id может быть идентификационный номер входа любого пользователя SQL Server или группы Windows, имеющего разрешение на подключение к экземпляру SQL Server. Если аргумент server_user_id не указан, возвращается идентификационное имя для входа текущего пользователя. Если параметр содержит слово NULL
, возвращается NULL
.
Возвращаемый тип
nvarchar(128)
Замечания
SUSER_NAME
возвращает имя входа только для имени входа, имеющего запись в представлениях sys.server_principals
каталога или sys.sql_logins
представлениях каталога.
SUSER_NAME
можно использовать в списке выбора в предложении WHERE и в любом месте, где разрешено выражение. Используйте скобки после SUSER_NAME
, даже если параметр не указан.
Примечание.
SUSER_NAME
Хотя функция поддерживается в База данных SQL Azure, использование EXECUTE AS с SUSER_NAME
не поддерживается в База данных SQL Azure.
Примеры
А. Использование SUSER_NAME
Следующий пример иллюстрирует получение идентификационного имени учетной записи с идентификационным номером 1
.
SELECT SUSER_NAME(1);
B. Использование SUSER_NAME без идентификатора
Следующий пример демонстрирует поиск имени текущего пользователя без указания его идентификатора.
SELECT SUSER_NAME();
GO
В SQL Server ниже приведен результирующий набор для входа, прошедшего проверку подлинности идентификатора Microsoft Entra:
contoso\username
В База данных SQL Azure и Microsoft Fabric ниже приведен результирующий набор для входа, прошедшего проверку подлинности идентификатора Microsoft Entra:
username@contoso.com