USER_NAME (języka Transact-SQL)
Zwraca nazwę użytkownika bazy danych od numeru podanego identyfikatora.
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