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


sp_revokedbaccess (Transact-SQL)

Область применения: SQL Server

Удаляет пользователя из текущей базы данных.

Внимание

Эта функция будет удалена в будущей версии SQL Server. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Вместо этого используйте DROP USER .

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

Синтаксис

sp_revokedbaccess [ @name_in_db = ] N'name_in_db'
[ ; ]

Аргументы

[ @name_in_db = ] N'name_in_db'

Имя пользователя базы данных, который нужно удалить. @name_in_db — sysname без значения по умолчанию. @name_in_db может быть именем имени имени входа сервера, имени входа Windows или группы Windows и должны существовать в текущей базе данных. При указании имени входа Windows или группы Windows укажите имя, по которому он известен в базе данных.

Значения кода возврата

0 (успешно) или 1 (сбой).

Замечания

При удалении пользователя базы данных также удаляются разрешения и псевдонимы этого пользователя.

sp_revokedbaccess может удалить только пользователей базы данных из текущей базы данных. Перед удалением пользователя базы данных, которому принадлежат объекты в текущей базе данных, необходимо передать принадлежность этих объектов или удалить их из базы данных. Дополнительные сведения см. в разделе ALTER AUTHORIZATION.

sp_revokedbaccess невозможно выполнить в рамках определяемой пользователем транзакции.

Разрешения

Необходимо разрешение ALTER ANY USER для базы данных.

Примеры

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

EXEC sp_revokedbaccess 'Edmonds\LolanSo';
GO