15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

SQL-Unterstützung in lokalen Datenbanken<br />

Jede Spaltendefinition ist der Name der Spalte gefolgt vom Datentyp für diese Spalte, danach ein oder mehrere<br />

optionale Spaltenbeschränkungen. Der Datentyp für die Spalte bestimmt, welche Daten in dieser Spalte gespeichert<br />

werden können. Wird versucht, einen Wert in einer Spalte mit einem anderen Datentyp zu speichern, konvertiert die<br />

Laufzeitumgebung den Wert in den geeigneten Typ, falls möglich, oder gibt einen Fehler aus. Weitere Informationen<br />

finden Sie unter „Unterstützte Datentypen“.<br />

Die NOT NULL-Spaltenbeschränkung gibt an, dass die Spalte keine NULL-Werte enthalten darf.<br />

Eine UNIQUE-Beschränkung führt dazu, dass eine Indexposition für die angegebene(n) Spalte(n) erstellt wird. Dieser<br />

Index muss eindeutige Schlüssel enthalten, das heißt, zwei Zeilen dürfen nicht doppelte Werte oder<br />

Wertkombinationen für die angegebene(n) Spalte(n) enthalten. Eine CREATE TABLE-Anweisung kann über<br />

mehrere UNIQUE-Beschränkungen verfügen, darunter mehrere Spalten mit einer UNIQUE-Beschränkung in der<br />

Spaltendefinition und/oder mehrere UNIQUE-Beschränkungen auf Tabellenebene.<br />

Eine CHECK-Beschränkung definiert einen Ausdruck, der evaluiert wird und „true“ sein muss, damit die Daten einer<br />

Zeile eingefügt oder aktualisiert werden. Der CHECK-Ausdruck muss in einen booleschen Wert aufgelöst werden.<br />

Eine COLLATE-Klausel in einer Spaltendefinition gibt an, welche Textüberprüfungsfunktion verwendet wird, wenn<br />

Texteinträge für die Spalte verglichen werden. Standardmäßig wird die BINARY-Überprüfungsfunktion verwendet.<br />

Ausführliche Informationen zur COLLATE-Klausel und zu Überprüfungsfunktionen finden Sie unter COLLATE.<br />

Die DEFAULT-Beschränkung definiert einen Standardwert, der beim Ausführen von INSERT verwendet wird. Der<br />

Wert kann NULL, eine Stringkonstante oder eine Zahl sein. Der Standardwert kann auch eines der speziellen<br />

Schlüsselwörter sein, bei denen die Groß- und Kleinschreibung keine Rolle spielt: CURRENT_TIME,<br />

CURRENT_DATE oder CURRENT_TIMESTAMP. Wenn der Wert NULL, eine Stringkonstante oder eine Zahl ist,<br />

wird er in die Spalte eingefügt, wenn eine INSERT-Anweisung keinen Wert für die Spalte angibt. Wenn der Wert<br />

CURRENT_TIME, CURRENT_DATE oder CURRENT_TIMESTAMP ist, wird das aktuelle Datum und/oder die<br />

aktuelle Uhrzeit im UTC-Format in die Spalte eingefügt. Für CURRENT_TIME lautet das Format HH:MM:SS. Für<br />

CURRENT_DATE lautet das Format YYYY-MM-DD. Das Format für CURRENT_TIMESTAMP ist YYYY-MM-DD<br />

HH:MM:SS.<br />

Durch die Angabe eines PRIMARY KEY wird normalerweise lediglich eine UNIQUE-Indexposition für die<br />

entsprechende(n) Spalte(n) erstellt. Wenn die PRIMARY KEY-Beschränkung jedoch für eine einzelne Spalte gilt, die<br />

den INTEGER-Datentyp (oder eines seiner Synonyme, wie z. B. int) aufweist, wird diese Spalte intern als eigentlicher<br />

Primärschlüssel für die Tabelle verwendet. Dies bedeutet, dass die Spalte nur eindeutige Ganzzahlwerte enthalten<br />

kann. (Beachten Sie, dass bei zahlreichen SQLite-Implementierungen nur der INTEGER-Spaltentyp dafür<br />

verantwortlich ist, dass die Spalte der interne Primärschlüssel ist, dass in Adobe AIR dieses Verhalten jedoch auch<br />

durch Synonyme von INTEGER, wie z. B. int, festgelegt wird.)<br />

Wenn eine Tabelle keine INTEGER PRIMARY KEY-Spalte hat, wird automatisch ein Ganzzahlschlüssel generiert,<br />

wenn eine Zeile eingefügt wird. Auf den Primärschlüssel für eine Zeile kann immer mit einem der speziellen Namen<br />

ROWID, OID oder _ROWID_ zugegriffen werden. Diese Namen können verwendet werden unabhängig davon, ob<br />

es sich um einen ausdrücklich deklarierten INTEGER PRIMARY KEY oder einen intern generierten Wert handelt.<br />

Wenn die Tabelle jedoch über einen ausdrücklichen INTEGER PRIMARY KEY verfügt, ist der Name der Spalte in den<br />

Ergebnisdaten der tatsächliche Spaltenname, nicht der spezielle Name.<br />

Eine INTEGER PRIMARY KEY-Spalte kann auch das AUTOINCREMENT-Schlüsselwort enthalten. Wenn das<br />

AUTOINCREMENT-Schlüsselwort verwendet wird, generiert die Datenbank automatisch einen fortlaufend<br />

inkrementierten Ganzzahlschlüssel und fügt ihn in die INTEGER PRIMARY KEY-Spalte ein, wenn eine INSERT-<br />

Anweisung keinen ausdrücklichen Wert für die Spalte festlegt.<br />

Es kann nur eine PRIMARY KEY-Beschränkung in einer CREATE TABLE-Anweisung geben. Es kann sich um einen<br />

Teil einer Spaltendefinition handeln oder um eine PRIMARY KEY-Beschränkung auf Tabellenebene. Ein<br />

Primärschlüssel ist implizit NOT NULL.<br />

Letzte Aktualisierung 27.6.2012<br />

1177

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!