Im neunten Teil zu Adobe AIR 1.0 geht es um das Thema SQL. AIR bietet die Möglichkeit, mit lokalen SQL-Datenbanken zu arbeiten. Die AIR-Runtime hat eine SQL-Engine, die auf der Open Source Technologie SQLite basiert.

In der lokalen Datenbank können z.B. Programmdaten, Benutzereinstellungen, Dokumente oder andere Arten von Daten gespeichert werden. Die SQL-Datenbank ist nichts anderes als eine Datei auf der Festplatte, in der die Daten abgelegt werden. Sie kann über ActionScript erstellt, befüllt und ausgelesen werden. Als Syntax werden dazu gewöhnliche SQL-Statements verwendet.

Adobe AIR SQL

Das folgende AIR-Beispiel erstellt zuerst eine neue Datenbank (Der Einfachheit wegen wird diese auf dem Desktop gespeichert). Anschließend wird ein erster Eintrag in die Datenbank-Tabelle geschrieben. Über die Benutzeroberfläche kann man weitere Einträge hinzufügen und die vorhanden anzeigen lassen.

Actionscript:

  1. span style="color: #808080; font-style: italic;">/*
  2. * :::::::::::: Neue Datenbank erstellen bzw. öffnen, falls vorhanden :::::::::::::::::::::
  3. */
  4.  
  5. // neue SQL Verbindung
  6. // event listeners
  7. // Wo wird SQL-Datenbank abgespeichert (->Desktop)
  8. "DBSample.db");
  9.  
  10. // DB/Datei öffnen; wenn nicht vorhanden, neue Datei
  11. // (Default ist immer SQLMode.CREATE, könnte also auch weggelassen werden)
  12. "Datenbank erfolgreich erstellt""Fehler:""Details:"/*
  13. * :::::::::::: Tabelle anlegen, falls sie nicht existiert :::::::::::::::::::::
  14. */
  15.  
  16. // neues Statement
  17. // Statement mit der Datenbank-Verbindung verknüpfen
  18. // Inhalt des SQL-Statements
  19. "CREATE TABLE IF NOT EXISTS personen (" +
  20.     "    id INTEGER PRIMARY KEY AUTOINCREMENT, " +
  21.     "    vorname TEXT, " +
  22.     "    nachname TEXT " +
  23.     ")"// event listeners
  24. // Statement ausführen
  25. "Tabelle erstellt""Fehler:""Details:"/*
  26. * :::::::::::: Initialer Eintrag :::::::::::::::::::::
  27. */
  28.  
  29. // Ersten Eintrag in die DB schreiben
  30. "Max Mustermann");
  31.  
  32.  
  33. /*
  34. * :::::::::::: Daten nach Buttonklick einfüllen :::::::::::::::::::::
  35. */// create the SQL statement
  36. // define the SQL text
  37. "INSERT INTO personen (vorname) " +
  38.         "VALUES ('" + str + "')"// event listener
  39. // statement ausführen
  40. "INSERT statement succeeded""Eintrag erfolgreich hinzugefügt.""Fehler: ""\nDetails: "/* ::::::::::::::: Werte auslesen :::::::::::
  41. *
  42. */// neues select statement
  43. // dem statement die verbindung zuweisen
  44. // statement festlegen
  45. "SELECT vorname FROM personen";
  46.  
  47.     // event listeners
  48. // statement ausführen
  49. // ergebnis ablegen
  50. // anzahl der einträge
  51. // Textfeld leeren
  52. "";
  53.    
  54.     // schleife
  55. "\n";
  56.  
  57.     }
  58. }

Link: Working with local SQL databases
Quelldatei (.fla)