Verwalten von XML-Schemaauflistungen auf dem Server

Wie im Thema xml-Datentyp beschrieben wird, ermöglicht SQL Server eine systemeigene Speicherung von XML-Daten mithilfe des xml-Datentyps. Optional können Sie über eine XML-Schemaauflistung einer Variablen oder einer Spalte vom xml -Typ XSD-Schemas zuordnen. Die XML-Schemaauflistung speichert die importierten XML-Schemas und wird dann für folgende Zwecke verwendet:

  • Überprüfen von XML-Instanzen

  • Typisierung der in der Datenbank gespeicherten XML-Daten

Beachten Sie, dass die XML-Schemaauflistung wie eine Tabelle in der Datenbank eine Metadatenentität ist. Sie können sie erstellen, ändern und löschen. In einer CREATE XML SCHEMA COLLECTION (Transact-SQL)-Anweisung angegebene Schemas werden automatisch in das neu erstellte XML-Schemaauflistungsobjekt importiert. Mit der ALTER XML SCHEMA COLLECTION (Transact-SQL)-Anweisung können Sie zusätzliche Schemas oder Schemakomponenten in ein in der Datenbank vorhandenes Auflistungsobjekt importieren.

Wie im Thema Typisiertes und nicht typisiertes XML beschrieben wird, wird der XML-Code, der in einer Spalte oder in einer Variablen mit zugeordnetem Schema gespeichert ist, als typisiertes XML bezeichnet, weil das Schema die für die Instanzendaten benötigten Datentypinformationen bereitstellt. SQL Server verwendet diese Typinformationen für die Optimierung des Datenspeichers.

Das Abfrageverarbeitungsmodul verwendet das Schema außerdem zur Typüberprüfung sowie zur Optimierung der Abfragen und zur Datenänderung.

SQL Server verwendet die zugeordnete XML-Schemaauflistung außerdem im Fall von typisiertem xml, um die XML-Instanz zu überprüfen. Wenn die XML-Instanz dem Schema entspricht, lässt die Datenbank das Speichern der Instanz und ihrer Typinformation im System zu. Anderenfalls wird die Instanz abgelehnt.

SQL Server bietet für die Verwaltung der in der Datenbank enthaltenen Schemas verschiedene DDL-Anweisungen. Sie müssen die XML-Schemaauflistung jedoch zuerst importieren, bevor Sie sie verwenden können. Weitere Informationen finden Sie unter DDL zum Verwalten der XML-Schemaauflistungen in der Datenbank.

Um eine XML-Schemaauflistung in eine Datenbank zu importieren, benötigen Sie entsprechende Berechtigungen. Weitere Informationen finden Sie unter Berechtigungen für eine XML-Schemaauflistung.

Um ein in der Datenbank gespeichertes Schema abzurufen, können Sie die systeminterne Funktion XML_SCHEMA_NAMESPACE verwenden. Weitere Informationen finden Sie unter Anzeigen einer gespeicherten XML-Schemaauflistung.

Die XML-Schemaauflistung können Sie auch verwenden, um XML-Variablen, -Parameter und -Spalten zu typisieren.