Freigeben über


HAS_DBACCESS (Transact-SQL)

Gilt für: SQL Server Azure SQL verwaltete Instanz Azure Synapse Analytics Analytics Platform System (PDW)

Gibt Informationen über den Zugriff des Benutzers auf die angegebene Datenbank zurück.

Transact-SQL-Syntaxkonventionen

Syntax

HAS_DBACCESS ( 'database_name' )  

Argumente

'database_name'
Der Name der Datenbank, für die der Benutzer Zugriffsinformationen wünscht. database_name ist sysname

Rückgabetypen

int

Bemerkungen

HAS_DBACCESS gibt 1 zurück, wenn der Benutzer Zugriff auf die Datenbank hat, 0, wenn der Benutzer keinen Zugriff auf die Datenbank hat, und NULL, wenn der Datenbankname ungültig ist.

HAS_DBACCESS gibt 0 zurück, wenn die Datenbank offline oder fehlerverdächtig ist.

HAS_DBACCESS gibt 0 zurück, wenn sich die Datenbank im Einzelbenutzermodus befindet und die Datenbank von einem anderen Benutzer verwendet wird.

Berechtigungen

Erfordert die Mitgliedschaft in der public-Rolle.

Beispiele

Im folgenden Beispiel wird getestet, ob der aktuelle Benutzer Zugriff auf die AdventureWorks2022-Datenbank hat.

SELECT HAS_DBACCESS('AdventureWorks2022');  
GO  

Beispiele: Azure Synapse Analytics und Analytics-Plattformsystem (PDW)

Im folgenden Beispiel wird getestet, ob der aktuelle Benutzer Zugriff auf die AdventureWorksPDW2012-Datenbank hat.

SELECT HAS_DBACCESS('AdventureWorksPDW2012');  
GO  

Weitere Informationen

IS_MEMBER (Transact-SQL)
IS_SRVROLEMEMBER (Transact-SQL)