sp_grantdbaccess (Transact-SQL)

Se aplica a:SQL Server

Agrega un usuario de base de datos a la base de datos actual.

Importante

Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Use CREATE USER en su lugar.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

[ @loginame = ] 'login_ ' Es el nombre del grupo de Windows, el inicio de sesión de Windows o el inicio de sesión de SQL Server que se asignará al nuevo usuario de base de datos. Los nombres de los grupos de Windows y los inicios de sesión de Windows deben estar calificados con un nombre de dominio de Windows con el formato Inicio\ de sesión de dominio; por ejemplo, LONDON\Joeb. El inicio de sesión ya no se puede asignar a un usuario de la base de datos. login es un sysname, sin ningún valor predeterminado.

[ @name_in_db = ] 'name_in_db' [ OUTPUT] Es el nombre del nuevo usuario de base de datos. name_in_db es una variable OUTPUT con un tipo de datos sysname y un valor predeterminado de NULL. Si no se especifica, se usa el inicio de sesión . Si se especifica como una variable OUTPUT con un valor NULL, @name_in_db se establece en login. name_in_db no debe existir en la base de datos actual.

Valores de código de retorno

0 (correcto) o 1 (error)

Comentarios

sp_grantdbaccess llama a CREATE USER, que admite opciones adicionales. Para obtener información sobre cómo crear usuarios de base de datos, vea CREATE USER (Transact-SQL). Para quitar un usuario de base de datos de una base de datos, use DROP USER.

sp_grantdbaccess no se puede ejecutar dentro de una transacción definida por el usuario.

Permisos

Requiere la pertenencia al rol fijo de base de datos db_owner o al rol fijo de base de datos db_accessadmin .

Ejemplos

En el ejemplo siguiente se usa CREATE USER para agregar un usuario de base de datos para el inicio de sesión de Edmonds\LolanSo Windows a la base de datos actual. El nuevo usuario se llama Lolan. Es el método preferido para crear un usuario de base de datos.

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

Consulte también

Procedimientos almacenados de seguridad (Transact-SQL)
CREATE USER (Transact-SQL)
DROP USER (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)