Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn der als Spaltenname angegebene Pfad "data()" lautet, wird der Wert als atomer Wert im generierten XML-Code behandelt. Dem XML-Code wird ein Leerzeichen hinzugefügt, wenn das nächste Element in der Serialisierung auch ein atomer Wert ist. Dies ist nützlich, wenn Sie listentypierte Elemente und Attributwerte erstellen. Die folgende Abfrage ruft die Produktmodell-ID, den Namen und die Liste der Produkte in diesem Produktmodell ab.
USE AdventureWorks2012;
GO
SELECT ProductModelID AS "@ProductModelID",
Name AS "@ProductModelName",
(SELECT ProductID AS "data()"
FROM Production.Product
WHERE Production.Product.ProductModelID =
Production.ProductModel.ProductModelID
FOR XML PATH ('')) AS "@ProductIDs"
FROM Production.ProductModel
WHERE ProductModelID= 7
FOR XML PATH('ProductModelData');
Die geschachtelte SELECT ruft eine Liste von Produkt-IDs ab. Es gibt "data()" als Spaltenname für Produkt-IDs an. Da der PATH-Modus eine leere Zeichenfolge für den Namen des Zeilenelements angibt, wird kein Zeilenelement generiert. Stattdessen werden die Werte einem ProductIDs-Attribut des <ProductModelData> Zeilenelements der übergeordneten SELECT zugeordnet zurückgegeben. Dies ist das Ergebnis:
<ProductModelData ProductModelID="7"
ProductModelName="HL Touring Frame"
ProductIDs="885 887 888 889 890 891 892 893" />