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