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

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Programmierung » SQL Anywhere Datenzugriff-APIs » SQL Anywhere C-API-Referenz

 

Einführung in die SQL Anywhere C-API Version 1.0

Die SQL Anywhere C-Anwendungs-Programmierschnittstelle (API, Application Programming Interface) vereinfacht die Erstellung von C- und C++-Wrapper-Treibern für mehrere interpretierte Programmiersprachen, einschließlich PHP, Perl, Python und Ruby. Die SQL Anywhere C-API befindet sich eine Ebene über der DBLIB-Bibliothek und wurde mit Embedded SQL implementiert.

Auch wenn sie kein Ersatz für DBLIB ist, vereinfacht die SQL Anywhere C-API die Erstellung von Anwendungen mit C und C++. Sie benötigen keine umfassenden Kenntnisse von Embedded SQL, um die SQL Anywhere C-API zu verwenden. Weitere Hinweise zur Implementierung finden Sie unter sqlany_imp.sqc.

API-Verteilung

Die API ist als eine dynamische Verknüpfungsbibliothek (DLL, Dynamic Link Library) (dbcapi.dll) auf Microsoft Windows-Systemen und als ein gemeinsam genutztes Objekt (Shared Object) (libdbcapi.so) auf Unix-Systemen verfügbar. Die DLL ist statisch mit dem DBLIB-Paket der SQL Anywhere-Version verbunden, auf der sie aufgebaut ist. Wenn die dbcapi.dll-Datei geladen wird, wird die entsprechende dblibX.dll-Datei vom Betriebssystem geladen. Anwendungen, die dbcapi.dll verwenden, können sich entweder direkt mit ihr verbinden oder sie dynamisch laden.

Beschreibungen der Datentypen und der Eintrittspunkte der SQL Anywhere C-API befinden sich in der Haupt-Header-Datei (sacapi.h).

Threading-Unterstützung

Die SQL Anywhere C-API-Bibliothek ist "nicht thread-fähig", d.h. die Bibliothek führt keine Aufgaben aus, die einen gegenseitigen Ausschluss erfordern. Damit die Bibliothek in Thread-Anwendungen arbeiten kann, ist nur eine Anforderung in einer einzigen Verbindung zulässig. Basierend auf dieser Regel ist die Anwendung für den gegenseitigen Ausschluss verantwortlich, wenn sie auf eine verbindungsspezifische Ressource zugreift. Dies umfasst Verbindung-Handles, vorbereitete Anweisungen und Ergebnismengenobjekte.


Die Schnittstellenbibliothek dynamisch laden