Condividi tramite


sp_grantdbaccess (Transact-SQL)

Aggiunge un utente del database al database corrente.

Nota importanteImportante

Questa funzionalità verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Evitare di utilizzare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Utilizzare CREATE USER in alternativa.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

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

Argomenti

  • [ @loginame = ] **'**login '
    Nome del gruppo di Windows, dell'account di accesso di Windows oppure dell'account di accesso di SQL Server sul quale eseguire il mapping al nuovo utente del database. I nomi di gruppi di Windows e di account di accesso di Windows devono essere qualificati tramite un nome di dominio Windows nel formato Domain\login, ad esempio LONDON\Joeb. Sull'account di accesso non può essere già stato eseguito il mapping a un utente nel database. login è di tipo sysname e non prevede alcun valore predefinito.

  • [ @name_in_db=] 'name_in_db' [ OUTPUT]
    Nome del nuovo utente del database. name_in_db è una variabile OUTPUT di tipo sysname e il valore predefinito è NULL. Se viene omesso, viene utilizzato login. Se invece viene specificato come variabile OUTPUT con valore NULL, @name_in_db viene impostato su login. name_in_db non deve essere già presente nel database corrente.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

sp_grantdbaccess chiama CREATE USER, che supporta opzioni aggiuntive. Per ulteriori informazioni sulla creazione di utenti del database, vedere CREATE USER (Transact-SQL). Per rimuovere un utente del database da un database, vedere DROP USER.

La stored procedure sp_grantdbaccess non può essere eseguita all'interno di una transazione definita dall'utente.

Autorizzazioni

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

Esempi

Nell'esempio seguente viene utilizzata l'istruzione CREATE USER per aggiungere un utente del database per l'account di accesso di Windows Edmonds\LolanSo al database corrente. Il nuovo utente è denominato Lolan. Si tratta del metodo ottimale per la creazione di un utente del database.

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

Vedere anche

Riferimento

Stored procedure di sicurezza (Transact-SQL)

CREATE USER (Transact-SQL)

DROP USER (Transact-SQL)

Stored procedure di sistema (Transact-SQL)