Share via


sp_revokedbaccess (Transact-SQL)

Rimuove un utente di database dal database corrente.

Nota importanteImportante

Questa caratteristica 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 DROP USER in alternativa.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_revokedbaccess [ @name_in_db = ] 'name'

Argomenti

  • [ @name_in_db = ] 'name'
    Nome dell'utente di database da rimuovere. name è di tipo sysname e non prevede alcun valore predefinito. name può essere il nome di un account di accesso del server, di un account di accesso di Windows o di un gruppo di Windows esistente nel database corrente. Se si specifica un account di accesso o un gruppo di Windows, specificare il nome con cui è noto nel database.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

Quando si rimuove l'utente di database, vengono rimossi anche le autorizzazioni e gli alias che dipendono dall'utente.

sp_revokedbaccess consente di rimuovere solo gli utenti di database dal database corrente. Prima di rimuovere un utente di database proprietario di oggetti nel database corrente è necessario trasferire la proprietà degli oggetti o rimuoverli dal database. Per ulteriori informazioni, vedere ALTER AUTHORIZATION (Transact-SQL).

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

Autorizzazioni

È richiesta l'autorizzazione ALTER ANY USER per il database.

Esempi

Nell'esempio seguente l'utente di database mappato a Edmonds\LolanSo viene rimosso dal database corrente.

EXEC sp_revokedbaccess 'Edmonds\LolanSo';
GO