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 ODBC-API

 

ODBC-Handles

ODBC-Anwendungen verwenden eine kleine Anzahl von Handles, um grundlegende Funktionen wie Datenbankverbindungen und SQL-Anweisungen zu definieren. Ein Handle ist ein 32-Bit-Wert.

Die folgenden Handles werden in nahezu allen ODBC-Anwendungen eingesetzt:

  • Umgebung   Das Umgebungs-Handle liefert einen globalen Kontext, in dem auf Daten zugegriffen wird. Jede ODBC-Anwendung muss beim Start genau einen Umgebungs-Handle zuweisen und es bei Beendigung wieder freigeben.

    Der folgende Code veranschaulicht, wie ein Umgebungs-Handle zugewiesen wird:

    SQLHENV env;
    SQLRETURN rc;
    rc = SQLAllocHandle( SQL_HANDLE_ENV, SQL
       _NULL_HANDLE, &env );

  • Connection   Eine Verbindung wird spezifiziert durch einen ODBC-Treiber und eine Datenquelle. Eine Anwendung kann über mehrere Verbindungen verfügen, die ihrer Umgebung zugeordnet sind. Ein Verbindungs-Handle zuzuweisen heißt nicht, eine Verbindung herzustellen. Ein Verbindungs-Handle muss zunächst zugewiesen und dann verwendet werden, wenn die Verbindung hergestellt ist.

    Der folgende Code veranschaulicht, wie ein Verbindungs-Handle zugewiesen wird:

    SQLHDBC  dbc;
    SQLRETURN rc;
    rc = SQLAllocHandle( SQL_HANDLE_DBC, env, &dbc );

  • Anweisung   Ein Anweisungs-Handle bietet Zugriff auf eine SQL-Anweisung und damit verbundene Daten, wie etwa Ergebnisgruppen und Parameter. Jede Verbindung kann mehrere Anweisungen haben. Anweisungen werden sowohl für Cursorvorgänge (Daten abrufen) als auch für die Ausführung einfacher Anweisungen benutzt (z.B. INSERT, UPDATE und DELETE).

    Der folgende Code veranschaulicht, wie ein Anweisungs-Handle zugewiesen wird:

    SQLHSTMT stmt;
    SQLRETURN rc;
    rc = SQLAllocHandle( SQL_HANDLE_STMT, dbc, &stmt );


ODBC-Handles zuweisen
Ein erstes ODBC-Beispiel