Returns information about whether the user has access to the specified database.
Applies to: SQL Server (SQL Server 2008 through current version).
HAS_DBACCESS returns 1 if the user has access to the database, 0 if the user has no access to the database, and NULL if the database name is not valid.
HAS_DBACCESS returns 0 if the database is offline or suspect.
HAS_DBACCESS returns 0 if the database is in single-user mode and the database is in use by another user.
The following example tests whether current user has access to the AdventureWorks2012 database.
SELECT HAS_DBACCESS('AdventureWorks2012'); GO