Nazwa_użytkownika (Transact-SQL)
Zwraca numer identyfikacyjny określony nazwę użytkownika bazy danych.
Składnia
USER_NAME ( [ id ] )
Argumenty
- id
Numer identyfikacyjny jest skojarzony z użytkowników bazy danych.idis int.Nawiasy są wymagane.
Zwracane typy
nvarchar(256)
Uwagi
Gdy id jest pominięta, zakłada bieżącego użytkownika w bieżącym kontekście.Gdy nazwa_użytkownika jest wywoływana bez określania id po EXECUTE jak instrukcjanazwa_użytkownika zwraca nazwę personifikowanych użytkowników.Jeżeli główna Windows uzyskuje dostęp do bazy danych z członkostwa w grupie, nazwa_użytkownika zwraca nazwę systemu Windows głównych zamiast grupy.
Przykłady
A.Za pomocą nazwa_użytkownika
Poniższy przykład zwraca nazwę użytkownika dla Identyfikatora użytkownika 13.
SELECT USER_NAME(13);
GO
B.Za pomocą nazwa_użytkownika bez identyfikator
Następujący przykład wyszukuje nazwę bieżącego użytkownika bez określania identyfikatora.
SELECT USER_NAME();
GO
W tym miejscu jest zestaw wyników dla użytkownika, który jest elementem element członkowski sysadmin stała rola serwera.
------------------------------
dbo
(1 row(s) affected)
C.Za pomocą nazwa_użytkownika w klauzulaWHERE
Następujący przykład wyszukuje wiersza w sysusers w którym nazwa jest równa wynik zastosowania systemu funkcja USER_NAME numer identyfikacyjny użytkownika 1.
SELECT name FROM sysusers WHERE name = USER_NAME(1);
GO
Oto zestaw wyników.
name
------------------------------
dbo
(1 row(s) affected)
D.Wywoływanie nazwa_użytkownika podczas personifikacji z EXECUTE
W poniższym przykładzie jak USER_NAME zachowuje się podczas personifikacji.
SELECT USER_NAME();
GO
EXECUTE AS USER = 'Zelig';
GO
SELECT USER_NAME();
GO
REVERT;
GO
SELECT USER_NAME();
GO
Oto zestaw wyników.
DBO
Zelig
DBO