Verwenden Sie DROP DATABASE, um eine Datenbank zu entfernen.
Verwenden Sie DBCC SHRINKDATABASE, um die Größe einer Datenbank zu reduzieren.
Die ALTER DATABASE-Anweisung muss im Autocommitmodus (dem Standardmodus für die Transaktionsverwaltung) ausgeführt werden und ist in einer expliziten oder impliziten Transaktion nicht zugelassen. Weitere Informationen finden Sie unter Autocommit-Transaktionen.
In SQL Server 2005 oder einer höheren Version wird der Status einer Datenbankdatei (z. B. online oder offline) unabhängig vom Status der Datenbank verwaltet. Weitere Informationen finden Sie unter Dateistatus. Der Status der Dateien in einer Dateigruppe bestimmt die Verfügbarkeit der gesamten Dateigruppe. Damit eine Dateigruppe verfügbar ist, müssen alle Dateien in der Dateigruppe online sein. Ist eine Dateigruppe offline, verursacht jeder Versuch, über eine SQL-Anweisung auf die Dateigruppe zuzugreifen, einen Fehler. Wenn Sie Abfragepläne für SELECT-Anweisungen erstellen, vermeidet der Abfrageoptimierer nicht gruppierte Indizes und indizierte Ansichten, die sich in Offlinedateigruppen befinden. Dadurch wird ein erfolgreiches Ausführen der Anweisungen ermöglicht. Enthält die Offlinedateigruppe jedoch den Heap oder gruppierten Index der Zieltabelle, schlagen die SELECT-Anweisungen fehl. Auch alle INSERT-, UPDATE- oder DELETE-Anweisungen, die eine Tabelle mit einem Index in einer Offlinedateigruppe ändern, schlagen fehl.
Wenn eine Datenbank sich im Status RESTORING befindet, erzeugen die meisten ALTER DATABASE-Anweisungen einen Fehler. Eine Ausnahme bildet das Festlegen von Datenbank-Spiegelungsoptionen. Im Status RESTORING kann eine Datenbank sich während eines aktiven Wiederherstellungsvorgangs befinden oder wenn ein Wiederherstellungsvorgang einer Datenbank oder Protokolldatei aufgrund einer beschädigten Sicherungsdatei fehlschlägt. Weitere Informationen finden Sie unter Reagieren auf SQL Server-Wiederherstellungsfehler als Folge von beschädigten Sicherungen.
Der Plancache für die Instanz von SQL Server wird gelöscht, indem eine der folgenden Optionen festgelegt wird:
|
OFFLINE
|
READ_WRITE
|
|
ONLINE
|
MODIFY FILEGROUP DEFAULT
|
|
MODIFY_NAME
|
MODIFY FILEGROUP READ_WRITE
|
|
COLLATE
|
MODIFY FILEGROUP READ_ONLY
|
|
READ_ONLY
|
|
Durch das Löschen des Plancaches wird eine Neukompilierung aller nachfolgenden Ausführungspläne verursacht, und möglicherweise entsteht plötzlich eine temporäre Verringerung der Abfrageleistung. Für jeden geleerten Cachespeicher im Plancache enthält das SQL Server-Fehlerprotokoll folgende Meldung zur Information: "SQL Server hat für den '%s'-Cachespeicher (Bestandteil des Plancache) %d Leerungen des Cachespeichers gefunden, die von Datenbankwartungs- oder Neukonfigurierungsvorgängen ausgelöst wurden". Diese Meldung wird alle fünf Minuten protokolliert, solange der Cache innerhalb dieses Zeitintervalls geleert wird.
Ändern der Datenbanksortierung
Bevor Sie auf eine Datenbank eine andere Sortierung anwenden, stellen Sie sicher, dass die folgenden Bedingungen erfüllt sind:
-
Die Datenbank wird derzeit nur von Ihnen verwendet.
-
Von der Sortierung der Datenbank hängt kein schemagebundenes Objekt ab.
Wenn die folgenden Objekte, die von der Datenbanksortierung abhängen, in der Datenbank vorhanden sind, tritt bei der ALTER DATABASE database_name COLLATE-Anweisung ein Fehler auf. In SQL Server wird eine Fehlermeldung für jedes Objekt zurückgegeben, das die ALTER-Aktion blockiert:
-
Benutzerdefinierte Funktionen und Sichten, die mit SCHEMABINDING erstellt wurden.
-
Berechnete Spalten.
-
CHECK-Einschränkungen.
-
Funktionen mit Tabellenrückgabe, deren Rückgabetabellen Zeichenspalten mit Sortierungen enthalten, die von der Sortierung der Standarddatenbank geerbt wurden.
Abhängigkeitsinformationen für nicht schemagebundene Entitäten werden automatisch aktualisiert, wenn die Sortierreihenfolge der Datenbank geändert wird. Weitere Informationen finden Sie unter Grundlegendes zu SQL-Abhängigkeiten.
-
Durch das Ändern der Sortierung der Datenbank werden keine Duplikate von Systemnamen für die Datenbankobjekte erstellt.
Die folgenden Namespaces verursachen möglicherweise einen Fehler bei der Änderung der Datenbanksortierung, wenn durch die geänderte Sortierung doppelte Namen entstehen:
-
Objektnamen wie z. B. der Name einer Prozedur, einer Tabelle, eines Triggers oder einer Sicht.
-
Schemanamen
-
Prinzipale wie z. B. eine Gruppe, eine Rolle oder ein Benutzer.
-
Namen skalarer Typen wie z. B. der Name eines system- oder benutzerdefinierten Typs.
-
Namen von Volltextkatalogen
-
Spalten- oder Parameternamen in einem Objekt
-
Indexnamen in einer Tabelle
Durch doppelte Namen, die durch die neue Sortierung entstanden sind, schlägt die ALTER-Aktion fehl. SQL Server gibt eine Fehlermeldung zurück, in der der Namespace angegeben wird, in dem das Duplikat gefunden wurde.
Anzeigen von Datenbankinformationen
Sie können Katalogsichten, Systemfunktionen und gespeicherte Systemprozeduren verwenden, um Informationen zu Datenbank, Dateien und Dateigruppen zurückzugeben. Weitere Informationen finden Sie unter Anzeigen von Datenbankmetadaten.