Condividi tramite


sp_certify_removable (Transact-SQL)

Si applica a: SQL Server

Verifica che un database sia configurato correttamente per la distribuzione su supporti rimovibili e segnala eventuali problemi.

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 DATABASE .

Convenzioni relative alla sintassi Transact-SQL

Sintassi

sp_certify_removable
    [ @dbname = ] N'dbname'
    [ , [ @autofix = ] N'autofix' ]
[ ; ]

Argomenti

[ @dbname = ] N'dbname'

Viene specificato il database da verificare. @dbname è sysname.

[ @autofix = ] N'autofix'

Viene assegnata la proprietà del database e di tutti i relativi oggetti all'amministratore di sistema e vengono eliminati tutti gli utenti del database creati dall'utente e tutte le autorizzazioni non predefinite. @autofix è nvarchar(4), con il valore predefinito NULL.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

Se il database è configurato correttamente, sp_certify_removable seguire questa procedura:

  • Imposta il database offline per consentire la copia dei file.
  • Aggiorna i dati statistici di tutte le tabelle e segnala gli eventuali problemi relativi alla proprietà o a un utente.
  • Contrassegna i filegroup di dati come filegroup di sola lettura per consentire la copia dei file su supporti di sola lettura.

L'amministratore di sistema deve essere il proprietario del database e di tutti i relativi oggetti. L'amministratore di sistema è un utente noto presente in tutti i server che eseguono SQL Server e può essere presente quando il database viene distribuito e installato in un secondo momento.

Se si esegue sp_certify_removable senza il AUTO valore e vengono restituite informazioni su una delle condizioni seguenti:

  • L'amministratore di sistema non è il proprietario del database.
  • Esistono utenti creati da un altro utente.
  • L'amministratore di sistema non possiede tutti gli oggetti nel database.
  • Sono state concesse autorizzazioni non predefinite.

È possibile correggere queste condizioni come indicato di seguito:

  • Usare gli strumenti e le procedure di SQL Server e quindi eseguire sp_certify_removable di nuovo.
  • Eseguire sp_certify_removable con il AUTO valore .

Questa stored procedure controlla solo gli utenti e le autorizzazioni utente. È consentito aggiungere gruppi al database e concedere autorizzazioni a tali gruppi. Per altre informazioni, vedere GRANT.

Autorizzazioni

Le autorizzazioni di esecuzione sono limitate ai membri del ruolo predefinito del server sysadmin .

Esempi

Nell'esempio seguente viene confermato che il database inventory è pronto per la rimozione.

EXEC sp_certify_removable inventory, AUTO;