Embedded SQL ist eine Umgebung, die eine Kombination aus C/C++-Programmcode und Pseudocode darstellt. Der Pseudocode, der mit traditionellem C/C++-Code durchsetzt sein kann, ist eine Teilmenge von SQL-Anweisungen. Ein Präprozessor konvertiert die Embedded SQL-Anweisungen in Funktionsaufrufe, die Teil des tatsächlichen Codes sind, der zur Erstellung der Anwendung kompiliert wird.
Es folgt ein sehr einfaches Beispiel für ein Embedded SQL-Programm. Es veranschaulicht die Aktualisierung einer UltraLite-Datenbank, indem der Nachname von Mitarbeiter 195 geändert wird.
#include <stdio.h> EXEC SQL INCLUDE SQLCA; main( ) { db_init( &sqlca ); EXEC SQL WHENEVER SQLERROR GOTO error; EXEC SQL CONNECT "DBA" IDENTIFIED BY "sql"; EXEC SQL UPDATE employee SET emp_lname = 'Johnson' WHERE emp_id = 195; EXEC SQL COMMIT; EXEC SQL DISCONNECT; db_fini( &sqlca ); return( 0 ); error: printf( "update unsuccessful: sqlcode = %ld\n", sqlca.sqlcode ); return( -1 ); } |
Dieses Beispiel ist zwar zu einfach, um tatsächlich verwendet werden zu können, doch es veranschaulicht folgende Aspekte, die für alle Embedded SQL-Anwendungen gleichermaßen gelten:
Jede SQL-Anweisung beginnt mit den Schlüsselwörtern EXEC SQL.
Jede SQL-Anweisung endet mit einem Strichpunkt.
Einige Embedded SQL-Anweisungen sind in Standard-SQL nicht enthalten. Ein Beispiel ist die Anweisung INCLUDE SQLCA.
Zusätzlich zu SQL-Anweisungen stellt Embedded SQL auch Bibliotheksfunktionen für die Ausführung einiger spezifischer Aufgaben bereit. Die Funktionen db_init und db_fini sind zwei Beispiele von Aufrufen von Bibliotheksfunktionen.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |