Freigeben über


Übersicht über Dateien und Dateigruppen

Durch die Definition und Verwendung zusätzlicher Dateigruppen können Sie die Datenbankleistung verbessern und die Sicherung und Wiederherstellung Ihrer Datenbankobjekte besser verwalten. Zum Beispiel können Sie Dateigruppen auf verschiedenen physischen Datenträgern definieren, um die Zugriffsgeschwindigkeit zu reduzieren. Wenn Sie alle diese Datenbankobjekte in einem Schema einer bestimmten Dateigruppe zuordnen, können Sie die Objekte dann zusammen sichern und wiederherstellen. Weitere Information über Dateigruppen finden Sie im folgenden Thema auf der Microsoft-Website: Architektur von Dateien und Dateigruppen.

Tipp

Wenn Sie mit einem Anwendungsprojekt auf Datenebene arbeiten (DAC), können Sie keine Dateien oder Dateigruppen definieren. Sie müssen ein DBSCHEMA-Datenbankprojekt verwenden, wenn Sie die Dateien und die Dateigruppen in der Datenbank steuern möchten.

Verhalten

Bevor Sie Dateien und Dateigruppen in Ihrem Datenbankprojekt definieren, sollten Sie die folgenden Verhaltensweisen berücksichtigen, damit Sie zwischen erwartetem Verhalten und unerwarteten Problemen unterscheiden können.

Importieren von Schemas

Mit dem Import eines Schemas aus einer vorhandenen Datenbank importieren Sie auch die Datei- und Dateigruppendefinitionen dieser Datenbank.

Vergleichen von Schemas

Durch den Vergleich von Schemas können Sie bestimmen, ob Objekte mit identischen Namen in Dateigruppen mit unterschiedlichen Namen erstellt wurden. Außerdem können Sie bestimmen, ob eine Dateigruppe zur Quelle, aber nicht zum Ziel hinzugefügt wurde bzw. aus der Quelle, aber nicht aus dem Ziel entfernt wurde. Weitere Informationen über den Schemavergleich finden Sie unter Gewusst wie: Vergleichen von Datenbankschemas.

Erstellen und Bereitstellen von Datenbankprojekten

Sie können nicht angeben, dass Dateien und Dateigruppen spezifisch für bestimmte Buildkonfigurationen sind. Sie haben aber die Möglichkeit, Dateien in Form von MSBuild-Variablen zu definieren, die spezifisch für eine Konfiguration sein können. Mit diesem Ansatz können Sie z. B. Pfade und Dateinamen in Ihrer isolierten Entwicklungsumgebung verwenden, die sich von denen auf Ihrem Stagingserver unterscheiden.

Löschen von Dateigruppen, Dateien und Protokolldateien

Wenn Sie eine Dateigruppe aus einem Datenbankprojekt löschen, können Sie diese Änderung in einer neuen Datenbank bereitstellen. Bei der Bereitstellung in einer vorhandenen Datenbank wird die Änderung hingegen ignoriert. Mit dem Löschen einer Dateigruppe aus einem Datenbankprojekt löschen Sie auch alle Dateien, die dieser Dateigruppe zugeordnet waren. Alle Objekte im Datenbankprojekt, die sich in der von Ihnen gelöschten Dateigruppe befanden, werden mit einem Fehlerstatus angezeigt. Zum Beheben der Fehler müssen Sie entweder die Dateigruppe neu erstellen oder die Definitionen dieser Objekte so ändern, dass sie einer anderen Dateigruppe zugeordnet werden. Unter diesen Umständen können Sie das Datenbankprojekt erst bereitstellen, wenn Sie die Fehler beheben.

Sie können die primäre Dateigruppe nicht löschen. Es muss immer eine Standarddateigruppe angegeben werden. Wenn Sie die einzige Datei in einer Dateigruppe entfernen, wird in einer Warnung im Fenster Fehlerliste angegeben, dass die Definition der Dateigruppe unvollständig ist. Außerdem können Sie nicht die einzige Protokolldatei in einem Datenbankprojekt entfernen. In einem Datenbankprojekt muss immer mindestens eine Protokolldatei definiert sein.

Einschränkungen

Wenn Sie geänderte Dateigruppen bereitstellen, Dateigruppen umbenennen oder Datenbankobjekte in schreibgeschützten Dateigruppen definieren, stoßen Sie möglicherweise auf folgende Einschränkungen.

Bereitstellen von Änderungen

Wenn Sie eine Dateigruppe zu einem Datenbankprojekt hinzufügen, können Sie diese Änderung in einer neuen oder vorhandenen Datenbank bereitstellen. Wenn Sie eine Dateigruppe löschen oder ihre Dateien oder Eigenschaften ändern, können Sie diese Änderungen in einer neuen Datenbank bereitstellen. Lösch- und Änderungsvorgänge für Dateigruppen werden jedoch ignoriert, wenn Sie das Projekt in einer vorhandenen Datenbank bereitstellen. Wenn der Name einer Dateigruppe im Datenbankprojekt dem Namen einer Dateigruppe auf dem Ziel entspricht, wird davon ausgegangen, dass die Dateigruppen gleich sind.

Wenn Sie eine Dateigruppe umbenennen und sie dann in einer vorhandenen Datenbank bereitstellen, wird eine Dateigruppe mit dem neuen Namen erstellt. Die vorhandene Dateigruppe bleibt unverändert.

Umbenennen von Dateigruppen in Objektdefinitionen

Sie können die Datenbankumgestaltung verwenden, um Namen von Dateigruppen in Definitionen von Datenbankobjekten zu aktualisieren. Weitere Informationen finden Sie unter Umbenennen aller Verweise auf ein Datenbankobjekt.

Definieren von Objekten in schreibgeschützten Dateigruppen

Auch wenn Sie das Kontrollkästchen Schreibgeschützt für eine Dateigruppe aktivieren, können Sie weiterhin Objekte in dieser Dateigruppe im Datenbankprojekt definieren. Wenn Sie jedoch versuchen, diese Änderungen in einer vorhandenen Datenbank bereitzustellen, schlägt der Vorgang mit einem Fehler fehl. Stellen Sie diese Änderungen in einer neuen Datenbank bereit, werden diese Objekte erstellt, als ob das Kontrollkästchen Schreibgeschützt deaktiviert wäre. Nachdem die Objekte erstellt worden sind, wird die Dateigruppe in der Datenbank als schreibgeschützt festgelegt.

Arbeiten mit Anwendungen auf Datenebene

Wenn Sie ein Anwendungsprojekt auf Datenebene erstellen, können Sie keine Dateien oder Dateigruppen für dieses Projekt definieren. Außerdem führen beim Konvertieren eines Datenbankprojekts in ein DAC-Projekt Dateien und Dateigruppen, die in diesem Datenbankprojekt definiert wurden, zu Fehlern. Weitere Informationen finden Sie unter Konvertieren zwischen Anwendungsprojekten auf Datenebene und Datenbankprojekten.

Siehe auch

Aufgaben

Gewusst wie: Angeben von Skripts vor der Bereitstellung und Skripts nach der Bereitstellung

Gewusst wie: Hinzufügen von Dateien und Dateigruppen

Konzepte

Übersicht über Datenbankprojekteinstellungen