Udostępnij za pośrednictwem


USER_NAME (języka Transact-SQL)

Zwraca nazwę użytkownika bazy danych od numeru podanego identyfikatora.

Topic link iconKonwencje składni języka Transact-SQL

USER_NAME ( [ id ] )

Argumenty

  • id
    Is the identification number associated with a database user.idis int.zdarzenie mogą zostać utracone z sesja.

Zwracane typy

nvarchar(256)

Remarks

Kiedy id jest pominięty, przejmuje bieżącego użytkownika w bieżącym kontekście. Gdy jest wywoływana USER_NAME bez określenia id Po wykonać AS instrukcja USER_NAME zwraca nazwę personifikowanych użytkowników. Jeśli główne Windows uzyskuje dostęp do bazy danych z członkostwa w grupie, USER_NAME zwraca nazwę okna Główne zamiast grupy.

Przykłady

A.Za pomocą USER_NAME

W poniższym przykładzie zwraca nazwę użytkownika dla IDENTYFIKATORA użytkownika 13.

SELECT USER_NAME(13);
GO

B.Za pomocą USER_NAME bez IDENTYFIKATORA

W poniższym przykładzie znajdzie nazwę bieżącego użytkownika bez określania identyfikatora.

SELECT USER_NAME();
GO

W tym polu jest wynikiem ustawiona dla danego użytkownika, który jest członkiem sysadmin, stałe roli serwera.

------------------------------

dbo

(dotyczy wiersze 1)

C.Za pomocą USER_NAME w klauzula WHERE

W poniższym przykładzie znajduje się w wierszu sysusers Nazwa jest równa wynik zastosowania funkcja systemowej USER_NAME numer identyfikacyjny użytkownika 1.

SELECT name FROM sysusers WHERE name = USER_NAME(1);
GO

Here is the result set.

Nazwa

------------------------------

dbo

(dotyczy wiersze 1)

D.Wywołanie USER_NAME podczas personifikacji z wykonać AS

W poniższym przykładzie jak USER_NAME zachowanie podczas personifikacji.

SELECT USER_NAME();
GO
EXECUTE AS USER = 'Zelig';
GO
SELECT USER_NAME();
GO
REVERT;
GO
SELECT USER_NAME();
GO

Here is the result set.

DBO

Zelig

DBO