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

SQL Anywhere 12.0.0 (Deutsch) » SQL Anywhere Server - Programmierung » .NET-Anwendungsprogrammierung » SQL Anywhere .NET-Datenprovider

 

Datenzugriff und Datenverarbeitung

Es gibt zwei Möglichkeiten, mit dem SQL Anywhere .NET-Datenprovider auf Daten zuzugreifen:

  • SACommand-Objekt   Das SACommand-Objekt ist die empfohlene Methode für den Zugriff auf Daten und ihre Verarbeitung in .NET.

    Das SACommand-Objekt ermöglicht Ihnen, SQL-Anweisungen durchzuführen, mit denen Daten direkt aus der Datenbank abgerufen oder dort geändert werden. Mit dem SACommand-Objekt können Sie in der Datenbank direkt SQL-Anweisungen ausführen und gespeicherte Prozeduren aufrufen.

    Innerhalb eines SACommand-Objekts wird das SADataReader-Objekt verwendet, um schreibgeschützte Ergebnismengen aus einer Abfrage oder gespeicherten Prozedur zurückzugeben. Das SADataReader-Objekt gibt jeweils nur eine Zeile zurück. Dies hat jedoch keine negative Auswirkung auf die Performance, da die clientseitigen SQL Anywhere-Bibliotheken Prefetch-Puffer verwenden, um gleichzeitig mehrere Zeilen im Voraus einzulesen.

    Mithilfe des SACommand-Objekts können Sie Ihre Änderungen in Transaktionen zusammenfassen, anstatt den Autocommit-Modus zu verwenden. Wenn Sie das SATransaction-Objekt verwenden, werden Sperren auf die Zeilen gesetzt, damit andere Benutzer sie nicht ändern können.

    Weitere Hinweise finden Sie unter SACommand-Klasse und SADataReader-Klasse.

  • SADataAdapter-Objekt   Das SADataAdapter-Objekt ruft die komplette Ergebnismenge in das DataSet-Objekt ab. Ein DataSet-Objekt ist ein Offline-Speicherort für aus der Datenbank abgerufene Daten. Sie können die Daten zuerst im DataSet-Objekt bearbeiten. Anschließend aktualisiert das SADataAdapter-Objekt die Datenbank mit den geänderen Daten aus dem DataSet-Objekt. Wenn Sie das SADataAdapter-Objekt verwenden, können auch andere Benutzer die Daten in Ihrem DataSet-Objekt ändern. Um daraus eventuell auftretende Konflikte zu lösen, müssen Sie eine entsprechende Logik in Ihre Anwendung einfügen.

    Weitere Hinweise zu Konflikten finden Sie im Abschnitt Konflikte beim Einsatz des SADataAdapter-Objekts lösen.

    Weitere Hinweise zum SADataAdapter-Objekt finden Sie im Abschnitt SADataAdapter-Klasse.

Wenn Sie anstelle des SADataAdapter-Objekts das SADataReader-Objekt mit einem SACommand-Objekt verwenden, um Zeilen aus der Datenbank abzurufen, ergeben sich keinerlei negative Auswirkungen auf die Performance.


SACommand-Objekt für den Abruf und die Verarbeitung von Daten verwenden
SADataAdapter-Objekt für den Datenzugriff und die Datenverarbeitung verwenden
Primärschlüsselwerte abrufen
Umgang mit BLOBs
Zeitwerte erhalten