Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Analytics-eindpunt in Microsoft Fabric
Magazijn in Microsoft Fabric
SQL-database in Microsoft Fabric Preview
Retourneert de aanmeldingsnaam die is gekoppeld aan een beveiligingsidentificatienummer (SID).
Transact-SQL syntaxis-conventies
Syntaxis
SUSER_SNAME ( [ server_user_sid ] )
Arguments
server_user_sid
Het optionele aanmeldingsbeveiligingsidentificatienummer.
server_user_sid is varbinary(85).
server_user_sid kan het beveiligingsidentificatienummer zijn van elke SQL Server-aanmelding of Microsoft Windows-gebruiker of -groep. Raadpleeg de sid kolom in sys.server_principals of sys.sql_logins catalogusweergaven. Als server_user_sid niet is opgegeven, wordt informatie over de huidige gebruiker geretourneerd. Als de parameter het woord NULLbevat, SUSER_SNAME wordt dit geretourneerd NULL.
server_user_sid wordt niet ondersteund in Azure SQL Database of SQL Database in Microsoft Fabric Preview.
Resultaattype
nvarchar(128)
Opmerkingen
SUSER_SNAME kan worden gebruikt als een DEFAULT beperking in ALTER TABLE of CREATE TABLE.
SUSER_SNAME kan worden gebruikt in een selectielijst, in een WHERE component en overal waar een expressie is toegestaan.
SUSER_SNAME moet altijd worden gevolgd door haakjes, zelfs als er geen parameter is opgegeven.
Wanneer u zonder argument wordt aangeroepen, SUSER_SNAME wordt de naam van de huidige beveiligingscontext geretourneerd. Wanneer aangeroepen zonder argument in een batch die context heeft gewijzigd met behulp EXECUTE ASvan, SUSER_SNAME retourneert u de naam van de geïmiteerde context. Wanneer deze wordt aangeroepen vanuit een geïmiteerde context, ORIGINAL_LOGIN wordt de naam van de oorspronkelijke context geretourneerd.
Opmerkingen voor Azure SQL Database, SQL Database in Fabric
SUSER_SNAME retourneert altijd de aanmeldingsnaam voor de huidige beveiligingscontext.
De SUSER_SNAME instructie biedt geen ondersteuning voor uitvoering met behulp van een geïmiteerde beveiligingscontext via EXECUTE AS.
SUSER_SNAME biedt geen ondersteuning voor het argument server_user_id .
Voorbeelden
Eén. Gebruik SUSER_SNAME
In het volgende voorbeeld wordt de aanmeldingsnaam voor de huidige beveiligingscontext geretourneerd.
SELECT SUSER_SNAME();
GO
B. Gebruik SUSER_SNAME met een windows-gebruikersbeveiligings-id
In het volgende voorbeeld wordt de aanmeldingsnaam geretourneerd die is gekoppeld aan een Windows-beveiligingsidentificatienummer.
SELECT SUSER_SNAME(0x010500000000000515000000a065cf7e784b9b5fe77c87705a2e0000);
GO
C. Gebruik SUSER_SNAME als standaardbeperking
In het volgende voorbeeld wordt een DEFAULT beperking in een CREATE TABLE instructie gebruiktSUSER_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 aanroepen in combinatie met EXECUTE AS
In dit voorbeeld ziet u het gedrag van SUSER_SNAME wanneer deze wordt aangeroepen vanuit een geïmiteerde context.
SELECT SUSER_SNAME();
GO
EXECUTE AS LOGIN = 'WanidaBenShoof';
SELECT SUSER_SNAME();
REVERT;
GO
SELECT SUSER_SNAME();
GO
Dit is het resultaat.
sa
WanidaBenShoof
sa
Voorbeelden: Azure Synapse Analytics and Analytics Platform System (PDW)
E. Gebruik SUSER_SNAME
In het volgende voorbeeld wordt de aanmeldingsnaam voor het beveiligingsidentificatienummer geretourneerd met een waarde van 0x01.
SELECT SUSER_SNAME(0x01);
GO
F. De huidige aanmelding retourneren
In het volgende voorbeeld wordt de aanmeldingsnaam van de huidige aanmelding geretourneerd.
SELECT SUSER_SNAME() AS CurrentLogin;
GO