Kullanıcı_adı (Transact-SQL)
Belirtilen kimlik numarasından bir veritabanı kullanıcı adını döndürür.
Sözdizimi
USER_NAME ( [ id ] )
Bağımsız değişkenler
- id
Bir veritabanı kullanıcısı ile ilişkili kimlik numarası.idis int.Ayraçlar gereklidir.
Dönüş Türleri
nvarchar(256)
Açıklamalar
Zaman id olan atlanırsa, geçerli kullanıcının geçerli içerikteki varsayılır.Ne zaman kullanıcı_adı çağırılır belirtmeden bir id bir execute sonrasında deyimkullanıcı_adı kimliğine bürünülen kullanıcı. adını döndürürAsıl Windows Grup üyeliği tarafından veritabanı erişirse, kullanıcı_adı Windows adını grubu yerine asıl döndürür.
Örnekler
A.Kullanıcı_adı kullanma
Aşağıdaki örnek, kullanıcı adı için kullanıcı kimliği verir 13.
SELECT USER_NAME(13);
GO
B.Kullanıcı_adı kimlik olmadan kullanma
Aşağıdaki örnek kimliği belirtmeden geçerli kullanıcı adını bulur.
SELECT USER_NAME();
GO
İşte sonuç kümesi için üye olan bir kullanıcı sysadmin sabit sunucu rolü.
------------------------------
dbo
(1 row(s) affected)
C.where yan tümcetümcesinde kullanıcı_adı kullanma
Aşağıdaki örnek satır bulur sysusers , adı eşittir sistem işlevuygulama sonucu USER_NAME kullanıcı kimlik numarası için 1.
SELECT name FROM sysusers WHERE name = USER_NAME(1);
GO
Sonuç kümesi buradadır.
name
------------------------------
dbo
(1 row(s) affected)
D.execute as ile kimliğe bürünme sırasında user_name çağırma
Aşağıdaki örnekte gösterildiği nasıl USER_NAME işleyiş sırasında kimliğe bürünme.
SELECT USER_NAME();
GO
EXECUTE AS USER = 'Zelig';
GO
SELECT USER_NAME();
GO
REVERT;
GO
SELECT USER_NAME();
GO
Sonuç kümesi buradadır.
DBO
Zelig
DBO