Поделиться через


HAS_DBACCESS (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure Azure Synapse Analytics Analytics Platform System (PDW)

Возвращает сведения о том, имеет ли пользователь доступ к указанной базе данных.

Соглашения о синтаксисе Transact-SQL

Синтаксис

HAS_DBACCESS ( 'database_name' )  

Аргументы

'database_name'
Имя базы данных, для которой пользователю необходимо получить сведения о доступе. Аргумент database_name имеет тип sysname.

Типы возвращаемых данных

int

Замечания

HAS_DBACCESS возвращает 1, если пользователь имеет доступ к базе данных; 0, если пользователь не имеет доступа к базе данных; и NULL, если введено неправильное имя базы данных.

Функция HAS_DBACCESS возвращает значение 0, если база данных находится в автономном режиме или является подозрительной.

Функция HAS_DBACCESS возвращает значение 0, если база данных находится в однопользовательском режиме и используется другим пользователем.

Разрешения

Требуется членство в роли public.

Примеры

В следующем примере проверяется, имеет ли текущий пользователь доступ к базе данных AdventureWorks2022.

SELECT HAS_DBACCESS('AdventureWorks2022');  
GO  

Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)

В следующем примере проверяется, имеет ли текущий пользователь доступ к базе данных AdventureWorksPDW2012.

SELECT HAS_DBACCESS('AdventureWorksPDW2012');  
GO  

См. также

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