sp_grantdbaccess (Transact-SQL)
Добавляет нового пользователя в текущую базу данных.
Важно! |
---|
В будущей версии Microsoft 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. В качестве этого имени входа не может использоваться имя, уже сопоставленное пользователю в базе данных. Аргумент login имеет тип sysname и не имеет значения по умолчанию.
- [ @name_in_db=] 'name_in_db' [ OUTPUT]
Имя нового пользователя базы данных. Аргумент name_in_db — переменная OUTPUT, имеющая тип данных sysname и значение по умолчанию NULL. Если оно не указано, то используется аргумент login. Если указано как переменная OUTPUT со значением NULL, аргументу @name_in_db присваивается значение аргумента login. Аргумент name_in_db не должен существовать в текущей базе данных до того.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Хранимая процедура sp_grantdbaccess вызывает инструкцию CREATE USER, которая поддерживает дополнительные параметры. Дополнительные сведения о создании пользователей баз данных см. в разделе CREATE USER (Transact-SQL). Чтобы удалить пользователя базы данных из базы данных, используется инструкция DROP USER.
Процедуру sp_grantdbaccess нельзя выполнять в пользовательской транзакции.
Необходимо быть членом фиксированной роли базы данных db_owner или db_owner.
Примеры
В следующем примере, чтобы добавить к текущей базе данных пользователя базы данных для имени входа Windows Edmonds\LolanSo
, используется инструкция CREATE USER
. Новому пользователю присваивается имя Lolan
. Этот метод является предпочтительным при создании пользователя базы данных.
CREATE USER Lolan FOR LOGIN [Edmonds\LolanSo];
GO
См. также
Справочник
Хранимые процедуры безопасности (Transact-SQL)
CREATE USER (Transact-SQL)
DROP USER (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)