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.
Ab Microsoft SQL Server 2000 wird die XML-Funktionalität beim Abrufen von Daten unterstützt. Damit Sie einen XML-Stream direkt aus Microsoft SQL Server 2000 zurückgeben können, verfügt das SqlCommand-Objekt des .NET Framework-Datenproviders für SQL Server über die ExecuteXmlReader-Methode. Die ExecuteXmlReader-Methode gibt ein System.Xml.XmlReader-Objekt zurück, das mit den Ergebnissen der SQL-Anweisung gefüllt ist, die für ein SqlCommand-Objekt angegeben wurde. Weitere Informationen zu XmlReader finden Sie unter der XmlReader-Klasse. Die ExecuteXmlReader-Methode kann nur zusammen mit einer Anweisung verwendet werden, die Ergebnisse als XML-Daten zurückgibt, z. B. Anweisungen, die die FOR XML-Klausel aus SQL Server 2000 enthalten, wie im folgenden Beispiel gezeigt.
Dim custCMD As SqlCommand = New SqlCommand("SELECT * FROM Customers FOR XML AUTO, ELEMENTS", nwindConn)
Dim myXR As System.Xml.XmlReader = custCMD.ExecuteXmlReader()
[C#]
SqlCommand custCMD = new SqlCommand("SELECT * FROM Customers FOR XML AUTO, ELEMENTS", nwindConn);
System.Xml.XmlReader myXR = custCMD.ExecuteXmlReader();
Mit dem DataSet können auch relationale Daten als XML-Daten geschrieben und mit XmlDataDocument synchronisiert werden, um eine relationale und hierarchische Echtzeitanzeige einer einzelnen Datengruppe im Speicher bereitzustellen. Weitere Informationen finden Sie unter Auffüllen eines DataSets mit einem DataAdapter-Objekt und XML und das DataSet.
Wenn keine speicherinterne, relationale Ansicht der Daten erforderlich und die Verwendung des DataSets somit überflüssig ist, können Sie problemlos die ExecuteXmlReader-Methode zum Abrufen von XML-Daten, besonders bei großen Datenmengen, verwenden. Da die ExecuteXmlReader-Methode eine Streaming-API ist, müssen die Daten nicht abgerufen und zwischengespeichert werden, bevor sie dem Aufrufer zur Verfügung gestellt werden, wie dies der Fall ist, wenn relationale Daten mit einem DataSet in XML-Daten konvertiert werden.
Schließen des XmlReader-Objekts
Nach der Verwendung des XmlReader-Objekts sollten Sie stets die Close-Methode aufrufen. Während ein XmlReader-Objekt geöffnet ist, wird das Connection-Objekt exklusiv von diesem XmlReader verwendet. Befehle können erst dann für das Connection-Objekt ausgeführt werden, wenn das XmlReader-Ausgangsobjekt geschlossen ist. Dies gilt auch für die Erstellung eines anderen XmlReaders oder DataReaders.
Siehe auch
SqlCommand-Klasse | XmlReader-Klasse | Auffüllen eines DataSets mit einem DataAdapter-Objekt | XML und das DataSet