sp_grantdbaccess (Transact-SQL)

Применимо к:SQL Server

Добавляет нового пользователя в текущую базу данных.

Внимание

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

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

Синтаксис

sp_grantdbaccess [ @loginame = ] 'login'  
    [ , [ @name_in_db = ] 'name_in_db' [ OUTPUT ] ]  

Аргументы

[ @loginame = ] 'login_ ' Имя группы Windows, имени входа Windows или имени входа SQL Server, сопоставленного новому пользователю базы данных. Имена групп Windows и имен входа Windows должны быть квалифицированы с доменным именем Windows в имени входа в\домене формы, например LONDON\Joeb. Указанное имя входа не может быть уже сопоставлено с пользователем в базе данных. имя входа — это имя sysname без значения по умолчанию.

[ @name_in_db = ] 'name_in_db' [ OUTPUT] Имя нового пользователя базы данных. name_in_db — это переменная OUTPUT с типом данных sysname и значением ПО умолчанию NULL. Если имя не указано, используется имя входа . Если указана в качестве переменной OUTPUT со значением NULL, @name_in_db устанавливается для входа. name_in_db не должно существовать в текущей базе данных.

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

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

sp_grantdbaccess вызывает CREATE USER, который поддерживает дополнительные параметры. Сведения о создании пользователей базы данных см. в статье CREATE USER (Transact-SQL). Чтобы удалить пользователя базы данных из базы данных, используйте DROP USER.

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

Разрешения

Требуется членство в предопределенных ролевые роли базы данных db_owner или предопределенных ролей базы данных db_accessadmin .

Примеры

В следующем примере используется CREATE USER добавление пользователя базы данных для входа Edmonds\LolanSo Windows в текущую базу данных. Новому пользователю присваивается имя Lolan. Этот метод является предпочтительным при создании пользователя базы данных.

CREATE USER Lolan FOR LOGIN [Edmonds\LolanSo];  
GO  

См. также

Хранимые процедуры безопасности (Transact-SQL)
СОЗДАНИЕ ПОЛЬЗОВАТЕЛЯ (Transact-SQL)
DROP USER (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)