Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - Programmierung » .NET-Anwendungsprogrammierung » SQL Anywhere .NET-Datenprovider » Datenzugriff und Datenverarbeitung

 

SADataAdapter: Übersicht

Das SADataAdapter-Objekt ruft eine Ergebnismenge in ein DataTable-Objekt ab. Ein DataSet-Objekt ist eine Sammlung von Tabellen (DataTable-Objekten) sowie den Beziehungen und Integritätsregeln zwischen diesen Tabellen. Das DataSet-Objekt wird in das .NET Framework integriert und ist unabhängig von dem Datenprovider, der für die Verbindung mit Ihrer Datenbank verwendet wird.

Wenn Sie das SADataAdapter-Objekt verwenden, müssen Sie mit der Datenbank verbunden sein, um ein DataTable-Objekt zu füllen und die Datenbank mit Änderungen zu aktualisieren, die am DataTable-Objekt vorgenommen wurden. Sobald das DataTable-Objekt mit Daten gefüllt ist, können Sie es jedoch auch ohne bestehende Datenbankverbindung ändern.

Wenn Sie Ihre Änderungen nicht sofort in die Datenbank übernehmen möchten, können Sie das DataSet-Objekt einschließlich Daten bzw. Schema mithilfe der WriteXML-Methode in eine XML-Datei schreiben. Dann können Sie die Änderungen zu einem späteren Zeitpunkt übernehmen, indem Sie das DataSet-Objekt mit der ReadXml-Methode laden. Im Folgenden finden Sie zwei Beispiele.

ds.WriteXml("Employees.xml");
ds.WriteXml("EmployeesWithSchema.xml", XmlWriteMode.WriteSchema);

Weitere Hinweise finden Sie in der Dokumentation zum .NET Framework zu WriteXml und ReadXml.

Wenn Sie die Update-Methode aufrufen, um Änderungen aus dem DataSet-Objekt in die Datenbank zu übernehmen, analysiert das SADataAdapter-Objekt die durchgeführten Änderungen und ruft dann die geeigneten Anweisungen (INSERT, UPDATE oder DELETE) auf. Wenn Sie das DataSet-Objekt verwenden, können Sie Änderungen (Einfügen, Aktualisieren oder Löschen) nur an Daten vornehmen, die aus einer einzelnen Tabelle stammen. Sie können keine Ergebnismengen aktualisieren, die auf Joins basieren. Wenn ein anderer Benutzer die Zeile, die Sie aktualisieren möchten, gesperrt hat, wird eine Ausnahmebedingung generiert.

Vorsicht

Alle Änderungen, die Sie im DataSet-Objekt vornehmen, werden offline durchgeführt. Ihre Anwendung setzt keine Sperren für diese Zeilen in der Datenbank. Ihre Anwendung muss so konzipiert sein, dass sie Konflikte löst, die eventuell auftreten, wenn die am DataSet-Objekt vorgenommenen Änderungen in die Datenbank übertragen werden und ein anderer Benutzer diese Daten inzwischen in der Datenbank verändert hat.

 Konflikte beim Einsatz des SADataAdapter-Objekts lösen