Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analiz Platformu Sistemi (PDW)
Microsoft Fabric'teki SQL analiz uç noktası
Microsoft Fabric'teki ambar
Microsoft Fabric Preview'daki SQL veritabanı
Güvenlik kimlik numarası (SID) ile ilişkili oturum açma adını döndürür.
Transact-SQL söz dizimi kuralları
Sözdizimi
SUSER_SNAME ( [ server_user_sid ] )
Arguments
server_user_sid
İsteğe bağlı oturum açma güvenliği kimlik numarası.
server_user_sidvarbinary(85) şeklindedir.
server_user_sid herhangi bir SQL Server oturum açma bilgisinin veya Microsoft Windows kullanıcısının veya grubunun güvenlik kimlik numarası olabilir.
sid veya sys.sql_logins katalog görünümlerindeki sys.server_principals sütuna bakın.
server_user_sid belirtilmezse, geçerli kullanıcı hakkındaki bilgiler döndürülür. parametresi sözcüğünü NULLiçeriyorsa döndürür SUSER_SNAMENULL.
server_user_sid , Azure SQL Veritabanı'nda veya Microsoft Fabric Preview'daki SQL veritabanında desteklenmez.
Dönüş türü
nvarchar(128)
Açıklamalar
SUSER_SNAMEveya CREATE TABLEiçinde ALTER TABLE kısıtlama DEFAULT olarak kullanılabilir.
SUSER_SNAME seçme listesinde, yan tümcesinde WHERE ve bir ifadeye izin verilen her yerde kullanılabilir.
SUSER_SNAME parametre belirtilmemiş olsa bile her zaman parantez içinde olmalıdır.
Bağımsız değişken olmadan çağrıldığında, SUSER_SNAME geçerli güvenlik bağlamının adını döndürür. kullanarak EXECUTE ASbağlamı değiştirmiş bir toplu iş içinde bağımsız değişken olmadan çağrıldığında, SUSER_SNAME kimliğine bürünülen bağlamın adını döndürür. Kimliğine bürünülen bir bağlamdan çağrıldığında özgün ORIGINAL_LOGIN bağlamın adını döndürür.
Dokuda Azure SQL Veritabanı, SQL veritabanı için açıklamalar
SUSER_SNAME her zaman geçerli güvenlik bağlamı için oturum açma adını döndürür.
deyimi SUSER_SNAME , aracılığıyla EXECUTE ASkimliğine bürünülen bir güvenlik bağlamı kullanılarak yürütmeyi desteklemez.
SUSER_SNAME
server_user_id bağımsız değişkenini desteklemez.
Örnekler
A. SUSER_SNAME kullanma
Aşağıdaki örnek, geçerli güvenlik bağlamı için oturum açma adını döndürür.
SELECT SUSER_SNAME();
GO
B. Windows kullanıcı güvenlik kimliğiyle SUSER_SNAME kullanma
Aşağıdaki örnek, Bir Windows güvenlik kimlik numarasıyla ilişkili oturum açma adını döndürür.
SELECT SUSER_SNAME(0x010500000000000515000000a065cf7e784b9b5fe77c87705a2e0000);
GO
C. default kısıtlaması olarak SUSER_SNAME kullanma
Aşağıdaki örnek, deyiminde CREATE TABLE kısıtlama DEFAULT olarak kullanırSUSER_SNAME.
USE AdventureWorks2022;
GO
CREATE TABLE sname_example (
login_sname SYSNAME DEFAULT SUSER_SNAME(),
employee_id UNIQUEIDENTIFIER DEFAULT NEWID(),
login_date DATETIME DEFAULT GETDATE()
);
GO
INSERT sname_example DEFAULT
VALUES;
GO
D. SUSER_SNAME EXECUTE AS ile birlikte çağırma
Bu örnek, kimliğine bürünülen bir bağlamdan çağrıldığında davranışını SUSER_SNAME gösterir.
SELECT SUSER_SNAME();
GO
EXECUTE AS LOGIN = 'WanidaBenShoof';
SELECT SUSER_SNAME();
REVERT;
GO
SELECT SUSER_SNAME();
GO
Sonuç aşağıdadır.
sa
WanidaBenShoof
sa
Örnekler: Azure Synapse Analytics ve Analytics Platform Sistemi (PDW)
E. SUSER_SNAME kullanma
Aşağıdaki örnek, değeri 0x01olan güvenlik kimlik numarası için oturum açma adını döndürür.
SELECT SUSER_SNAME(0x01);
GO
F. Geçerli oturum açma bilgilerini döndürme
Aşağıdaki örnek, geçerli oturum açmanın oturum açma adını döndürür.
SELECT SUSER_SNAME() AS CurrentLogin;
GO