sp_certify_removable (Transact-SQL)

Gilt für:SQL Server

Überprüft, ob eine Datenbank für die Verteilung auf austauschbaren Medien ordnungsgemäß konfiguriert ist, und meldet dem Benutzer alle Probleme.

Wichtig

Diese Funktion wird in einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden. Verwenden Sie stattdessen CREATE DATABASE .

Transact-SQL-Syntaxkonventionen

Syntax

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

Argumente

[ @dbname = ] N'dbname'

Gibt die Datenbank an, die überprüft werden soll. @dbname ist "sysname".

[ @autofix = ] N'autofix'

Überträgt den Besitz der Datenbank und aller Datenbankobjekte an den Systemadministrator und löscht alle vom Benutzer erstellten Datenbankbenutzer und nicht standardmäßigen Berechtigungen. @autofix ist nvarchar(4), mit einem Standardwert von NULL.

Rückgabecodewerte

0 (erfolgreich) oder 1 Fehler.

Hinweise

Wenn die Datenbank ordnungsgemäß konfiguriert ist, sp_certify_removable führen Sie die folgenden Schritte aus:

  • Legt den Offlinemodus für die Datenbank fest, sodass Dateien kopiert werden können.
  • Aktualisiert die Statistik für alle Tabellen und meldet Besitz- oder Benutzerprobleme.
  • Markiert die Datendateigruppen als schreibgeschützt, damit diese Dateien auf schreibgeschützte Medien kopiert werden können.

Der Systemadministrator muss der Besitzer der Datenbank und aller Datenbankobjekte sein. Der Systemadministrator ist ein bekannter Benutzer, der auf allen Servern mit SQL Server vorhanden ist, und kann erwartet werden, dass sie vorhanden ist, wenn die Datenbank später verteilt und installiert wird.

Wenn Sie ohne den AUTO Wert ausgeführt sp_certify_removable werden und Informationen zu einer der folgenden Bedingungen zurückgibt:

  • Der Systemadministrator ist nicht der Datenbankbesitzer.
  • Beliebige vom Benutzer erstellte Benutzer sind bereits vorhanden.
  • Der Systemadministrator besitzt nicht alle Objekte in der Datenbank.
  • Es wurden von den Standardwerten abweichende Berechtigungen erteilt.

Sie können diese Bedingungen mithilfe der folgenden Möglichkeiten korrigieren:

  • Verwenden Sie SQL Server-Tools und -Verfahren, und führen Sie dann erneut aus sp_certify_removable .
  • Führen Sie sp_certify_removable den AUTO Wert aus.

Diese gespeicherte Prozedur überprüft nur auf Benutzer und Benutzerberechtigungen. Sie können der Datenbank Gruppen hinzufügen und diesen Berechtigungen erteilen. Weitere Informationen finden Sie unter GRANT (Transact-SQL).

Berechtigungen

Ausführungsberechtigungen sind auf Mitglieder der festen Serverrolle "sysadmin " beschränkt.

Beispiele

In diesem Beispiel wird überprüft, ob die inventory-Datenbank für das Entfernen vorbereitet ist.

EXEC sp_certify_removable inventory, AUTO;