Freigeben über


sp_certify_removable (Transact-SQL)

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

Wichtiger HinweisWichtig

Diese Funktion wird in zukünftigen Versionen von Microsoft SQL Server nicht mehr bereitgestellt. Verwenden Sie diese Funktion beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird. Stattdessen sollten Sie CREATE DATABASE verwenden.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sp_certify_removable [ @dbname= ] 'dbname'
          [ , [ @autofix = ] 'auto' ]

Argumente

  • [ @dbname=] 'dbname'
    Gibt die zu überprüfende Datenbank an. dbname ist vom Datentyp sysname.

  • [ @autofix=] 'auto'
    Ü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. auto ist vom Datentyp nvarchar(4). Der Standardwert ist NULL.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

Falls die Datenbank ordnungsgemäß konfiguriert ist, führt sp_certify_removable folgende Aktionen 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 vorhanden ist, auf denen Microsoft SQL Server ausgeführt wird. Er ist mit Sicherheit auch vorhanden, wenn die Datenbank später verteilt und installiert wird.

Falls Sie sp_certify_removable ohne den auto-Wert ausführen, werden möglicherweise Informationen zu den folgenden Bedingungen zurückgegeben:

  • 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:

  • Sie können die entsprechenden SQL Server-Tools und -Prozeduren verwenden und dann sp_certify_removable erneut ausführen.

  • Führen Sie sp_certify_removable mit dem auto-Wert aus.

Beachten Sie, dass diese gespeicherte Prozedur nur Benutzer und Benutzerberechtigungen überprüft. 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 die 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