sp_grantdbaccess (Transact-SQL)

Si applica a: SQL Server

Aggiunge un utente del database al database corrente.

Importante

Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Usare invece CREATE USER .

Convenzioni relative alla sintassi Transact-SQL

Sintassi

sp_grantdbaccess
    [ @loginame = ] N'loginame'
    [ , [ @name_in_db = ] N'name_in_db' OUTPUT ]
[ ; ]

Argomenti

[ @loginame = ] N'loginame'

Nome del gruppo di Windows, dell'account di accesso di Windows o dell'account di accesso di SQL Server di cui eseguire il mapping al nuovo utente del database. @loginame è sysname, senza impostazione predefinita. I nomi dei gruppi di Windows e degli account di accesso di Windows devono essere qualificati con un nome di dominio Windows nel formato <domain>\<login>, ad esempio LONDON\Joeb. Non è possibile eseguire il mapping dell'account di accesso a un utente nel database.

[ @name_in_db = ] N'name_in_db' OUTPUT

Nome del nuovo utente del database. @name_in_db è un parametro OUTPUT di tipo sysname. Se non specificato, viene utilizzato @loginame . Se specificato come variabile OUTPUT con valore NULL, @name_in_db è impostato su @loginame. @name_in_db non deve esistere già nel database corrente.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

sp_grantdbaccess chiama CREATE USER, che supporta opzioni aggiuntive. Per informazioni sulla creazione di utenti di database, vedere CREATE USER. Per rimuovere un utente di database da un database, usare DROP USER.

sp_grantdbaccess non può essere eseguito all'interno di una transazione definita dall'utente.

Autorizzazioni

Richiede l'appartenenza al ruolo predefinito del database db_owner o al ruolo predefinito del database db_accessadmin .

Esempi

Nell'esempio seguente viene CREATE USER usato per aggiungere un utente di database per l'account Edmonds\LolanSo di Windows al database corrente, ovvero il metodo preferito per la creazione di un utente di database. Il nuovo utente è denominato Lolan.

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