Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

2. DB-API: Programmierschnittstellen zu Datenbanken 2.1 ODBC.

Ähnliche Präsentationen


Präsentation zum Thema: "2. DB-API: Programmierschnittstellen zu Datenbanken 2.1 ODBC."—  Präsentation transkript:

1 2. DB-API: Programmierschnittstellen zu Datenbanken 2.1 ODBC

2 proprietäre DB-APIs ORACLE-DBINGRES-DBSYBASE-DB ORACLE OCIINGRES API SYBASE API Anwendung passt passt nicht

3 ODBC-Konzept ORACLE-DBINGRES-DBSYBASE-DB ORACLE OCIINGRES API SYBASE API Anwendung passt ODBC Treiber

4 ODBC = Open DataBase Connectivity Initiator: Microsoft und andere Zweck: Einheitliche API für verschiedene DBMS (API = Application Program Interface) CLI = Call Level Interface Implementierung der Definition der X/Open Group Sammlung von C-Funktionen Grundlage: Client-Server Architektur Komponenten von ODBC: Treiber-Manager je ein Treiber für jedes DBMS

5 Komponenten von ODBC Anwendung ODBC-Treiber Manager ODBC-TreiberODBC-Treiber2 OCI-Bibliothek Oracle DB-Server ODBC-Umgebung einrichten passenden Treiber aktivieren DB-Aktionen aufrufen Übersetzung Netzwerkkommunikation

6 Handle-Konzept hstmt SQLAllocStmt(..., &hstmt) SQLExecDirect(hstmt,... Inhalt Handle ODBC-Treiber SQLBindColumn(hstmt,... Speicherplatz reservieren Zugriff Handle zeigt auf Info Trägt Info ein

7 ODBC-Funktionen: Umgebungs- u. Verbindungshandle ODBC-API einbinden #include Umgebungshandle einrichten HENV handlevariable_environment; SQLAllocEnv (&handlevariable_environment) Verbindungshandle einrichten: HDBC handlevariable_Verbindung; SQLAllocConnect (handlevariable_environment, &handlevariable_verbindung)

8 ODBC-Funktionen: Verbindungsaufbau zur Datenbank SQLConnect( handlevariable_verbindung, Datenquellenname /* logischer Name der Datenbank */, Art_Zeichenkette /* z.B. SQL_NTS = Null Terminatet String */, Benutzername /* z.B. "dapro01" */, Länge_Benutzername /* z.B. 15 */, Passwort, Länge_Passwort /* z.B. 14 */)

9 ODBC-Funktionen: SQL-Anweisung senden Anweisungshandle einrichten HSTMT handlevariable_anweisung; SQLAllocStmt (handlevariable_verbindung, &handlevariable_anweisung); SQL-Anweisung ausführen SQLExecDirect( handlevariable_anweisung, string_mit_SQL_Anweisung, Art_Zeichenkette);

10 ODBC-Funktionen: Suchergebnisse mit Cursor holen Bindung von Tabellenspalten zu C-Variablen SQLBindCol( handlevariable_anweisung, Spaltennummer /* z.B. 1 */, Datentyp_der_Spalte, &Zielvariable, sizeof(Zielvariable), &Datenlänge) Nächsten Datensatz holen SQLFetch(handlevariable_anweisung)

11 ODBC-Funktionen: Spalten holen Eine Spalte des aktuellen Datensatzes holen SQLGetData( handlevariable_anweisung, Spaltennummer, Datentyp_der_Spalte, &Zielvariable, sizeof(&Zielvariable), &Datenlänge);

12 ODBC-Funktionen: Abfrage vorbereiten Abfrage vorbereiten SQLPrepare( handlevariable_anweisung, string_mit_SQL_Anweisung, Art_Zeichenkette); Vorbereitete Abfrage ausführen SQLExecute( handlevariable_anweisung);


Herunterladen ppt "2. DB-API: Programmierschnittstellen zu Datenbanken 2.1 ODBC."

Ähnliche Präsentationen


Google-Anzeigen