Implementieren von XML in SQL Server

Der xml-Datentyp ermöglicht das Speichern von XML-Dokumenten und -Fragmenten in einer SQL Server-Datenbank. Ein XML-Fragment ist eine XML-Instanz, der ein einzelnes Element der obersten Ebene fehlt. Sie können Spalten und Variablen vom Typ xml erstellen und XML-Instanzen darin speichern.

Optional können Sie einer Spalte, einem Parameter oder einer Variablen des xml-Datentyps eine XML-Schemaauflistung zuordnen. Die Schemas in der Auflistung werden verwendet, um XML-Instanzen zu überprüfen und zu typisieren. Letzteres wird als typisiertes XML bezeichnet.

Der xml-Datentyp und die zugehörigen Methoden sind bei der Integration von XML in das relationale Framework von SQL Server hilfreich. Weitere Informationen finden Sie unter xml-Datentypmethoden.

Einschränkungen des XML-Datentyps

Für den xml-Datentyp gelten die folgenden allgemeinen Einschränkungen:

  • Die gespeicherte Darstellung von xml-Datentypinstanzen darf 2 GB nicht überschreiten.

  • Er kann nicht als Untertyp einer sql_variant-Instanz verwendet werden.

  • Er unterstützt keine Umwandlung oder Konvertierung in text oder ntext. Verwenden Sie stattdessen varchar(max) oder nvarchar(max).

  • Er kann weder verglichen noch sortiert werden. Dies bedeutet, dass ein xml-Datentyp nicht in einer GROUP BY-Anweisung verwendet werden kann.

  • Er kann für integrierte Skalarfunktionen außer ISNULL, COALESCE und DATALENGTH nicht als Parameter verwendet werden.

  • Er kann nicht als Schlüsselspalte für einen Index verwendet werden. Kann jedoch als Daten in einen gruppierten Index aufgenommen werden oder über das Schlüsselwort INCLUDE explizit zu einem nicht gruppierten Index hinzugefügt werden, wenn der nicht gruppierte Index erstellt wird.

Weitere Informationen über Einschränkungen, die den Datentyp xml betreffen, finden Sie in den Themen dieses Abschnitts.

In diesem Abschnitt

Thema

Beschreibung

Variablen und Spalten des XML-Datentyps

Beschreibt, wie Variablen und Spalten des xml-Datentyps erstellt, geändert und verwendet werden.

Typisiertes XML im Vergleich zu nicht typisiertem XML

Definiert typisiertes und nicht typisiertes XML. Beschreibt XML-Schemas und erklärt, wie eine XML-Schemaauflistung registriert wird.

Generieren von XML-Instanzen

Beschreibt verschiedene Methoden zum Generieren von XML-Instanzen.

xml-Datentypmethoden

Beschreibt die Methoden des xml-Datentyps.

Festlegen von Optionen (xml-Datentyp)

Beschreibt die Optionen, die Sie festlegen müssen, wenn Sie Spalten oder Variablen des xml-Datentyps abfragen.

Hinzufügen von Namespaces mithilfe von WITH XMLNAMESPACES

Beschreibt, wie Namespaces mit einer WITH XMLNAMESPACES-Klausel hinzugefügt werden.

XML DML (Data Modification Language)

Beschreibt die XML-Datenänderungssprache (XML DML, Data Modification Language) und ihre drei Schlüsselwörter.

Indizes für Spalten des Datentyps XML

Beschreibt, wie primäre und sekundäre XML-Indizes erstellt, geändert und verwendet werden.

Serialisierung von XML-Daten

Erklärt, wie XML-Daten serialisiert werden, und beschreibt die Entitätserstellung für XML-Zeichen.

Arbeiten mit dem XML-Datentyp in Anwendungen

Beschreibt die Optionen, die Ihnen bei der Arbeit mit dem xml-Datentyp in Anwendungen zur Verfügung stehen.

Darstellung des xml-Datentyps in der AdventureWorks2008R2-Datenbank

Beschreibt die Spalten des xml-Datentyps in der AdventureWorks2008R2-Datenbank.