Compartir vía


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 = ] N'loginame'
    [ , [ @name_in_db = ] N'name_in_db' OUTPUT ]
[ ; ]

Argumentos

[ @loginame = ] N'loginame'

Nombre del grupo de Windows, inicio de sesión de Windows o inicio de sesión de SQL Server, que se asignará al nuevo usuario de base de datos. @loginame es sysname, sin ningún valor predeterminado. Los nombres de los grupos de Windows y los inicios de sesión de Windows deben calificarse con un nombre de dominio de Windows con el formato <domain>\<login>; por ejemplo, LONDON\Joeb. El inicio de sesión aún no se puede asignar a un usuario de la base de datos.

[ @name_in_db = ] SALIDA de N'name_in_db'

Nombre del nuevo usuario de base de datos. @name_in_db es un parámetro OUTPUT de tipo sysname. Si no se especifica, se usa @loginame . Si se especifica como una variable OUTPUT con un valor de NULL, @name_in_db se establece en @loginame. @name_in_db no debe existir en la base de datos actual.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Comentarios

sp_grantdbaccess llama a CREATE USER, que admite opciones adicionales. Para obtener información sobre cómo crear usuarios de base de datos, consulte CREATE USER. 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 la cuenta Edmonds\LolanSo de Windows a la base de datos actual, que es el método preferido para crear un usuario de base de datos. El nuevo usuario se llama Lolan.

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