Paket | flash.data |
Klasse | public class SQLConnection |
Vererbung | SQLConnection EventDispatcher Object |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Die Funktionen der SQLConnection-Klasse werden in mehrere Kategorien unterteilt:
-
Eine lokale SQL-Datenbankdatei wird erstellt oder geöffnet, indem die
open()
-Methode der SQLConnection-Instanz für diesqlConnection
-Eigenschaft von SQLStatement aufgerufen wird. -
Außerdem bietet die SQLConnection-Klasse Möglichkeiten für SQL-Anweisungen, einschließlich einer Funktionalität zum Ausführen mehrerer Anweisungen in einer Transaktion. Transaktionen werden mithilfe der Methoden
begin()
,commit()
undrollback()
verwaltet. Zusätzlich ermöglichen die MethodensetSavepoint()
,releaseSavepoint()
undrollbackToSavepoint()
es Code, Speicherpunkte zu definieren und zu verwalten. Diese werden verwendet, um Transaktionen in Gruppen von Vorgängen zu unterteilen. -
Die SQLConnection-Klasse bietet Zugriff auf Datenbankschemainformationen zu den verbundenen Datenbanken. Im Schema einer Datenbank werden die Definitionen ihrer Tabellen, Spalten, Indizes und Auslöser beschrieben. Weitere Informationen finden Sie im Abschnitt zur
loadSchema()
-Methode. -
Mithilfe der SQLConnection-Klasse können Datenbanken unter Verwendung von AES-CCM verschlüsselt werden. Dadurch können Daten sowohl identifiziert als auch geschützt werden. Zum Verschlüsseln einer Datenbank muss bei deren Erstellung ein 16-Byte-Schlüssel festgelegt werden (durch ein ByteArray). Dieser Schlüssel kann später mithilfe der
SQLConnection.reencrypt()
-Methode geändert werden. Durch die Verschlüsselung wird die Leistung beim Schreiben in die Datenbank und beim Lesen daraus verringert. Die Verschlüsselung wird auf die auf der Festplatte gespeicherten Daten angewendet, nicht jedoch auf den temporären Datencache im Arbeitsspeicher. Für Datenbanken im Speicher wird die Verschlüsselung nicht unterstützt. -
Mithilfe einer SQLConnection-Instanz können Ereignisbenachrichtigungen auf Datenbankebene empfangen und Konfigurationssteuerungen aller Aspekte einer Datenbank, einschließlich Seitengröße im Cache, Verfahrensstornierung und Optionen zur Anweisungsausführung, vorgenommen werden.
Eine SQLConnection
-Instanz wird entweder im asynchronen oder im synchronen Modus ausgeführt. Für eine Ausführung im synchronen Modus verbinden Sie die „SQLConnection“-Instanz mithilfe der Methode open()
mit der Hauptdatenbank. Für eine Ausführung im asynchronen Modus verbinden Sie die „SQLConnection“-Instanz mithilfe der Methode openAsync()
mit der Hauptdatenbank.
Im asynchronen Modus wird mithilfe von Ereignis-Listenern oder einer Responder-Instanz bestimmt, wann ein Vorgang erfolgreich abgeschlossen wird oder fehlschlägt. Die Vorgänge werden im Hintergrund ausgeführt und nicht im Hauptanwendungs-Thread, d. h. die Anwendung wird weiterhin ausgeführt und reagiert auch während der Ausführung der Datenbankvorgänge auf Benutzereingriffe. Jede asynchrone SQLConnection-Instanz führt SQL-Anweisungen in ihrem eigenen Thread aus.
Im asynchronen Modus starten Sie einen bestimmten Vorgang durch ein Aufrufen der entsprechenden Methode. Um den Abschluss (oder das Fehlschlagen) des Vorgangs festzustellen, registrieren Sie einen Listener für das entsprechende Ereignis. Zu jedem Vorgang gibt es ein zugeordnetes Ereignis, das beim erfolgreichen Abschluss des Vorgangs ausgelöst wird. Wenn beispielsweise der Aufruf einer openAsync()
-Methode erfolgreich abgeschlossen wird (wenn die Datenbankverbindung hergestellt wird), wird das Ereignis open
ausgelöst. Beim Fehlschlagen eines Vorgangs wird ein error
-Ereignis ausgelöst. Die „SQLError“-Instanz in der Eigenschaft error
des „SQLErrorEvent“-Objekts enthält Informationen über den jeweiligen Fehler, einschließlich des versuchten Vorgangs und des Grunds für das Fehlschlagen.
Im synchronen Modus brauchen Sie keine Ereignis-Listener zu registrieren, um den Abschluss oder das Fehlschlagen eines Vorgangs zu bestimmen. Zur Identifizierung der Fehler schließen Sie die Anweisungen, die Fehler auslösen, in einen try..catch
-Block ein. Da synchrone Vorgänge im Hauptausführungs-Thread ausgeführt werden, werden alle Anwendungsfunktionen (einschließlich Aktualisierung des Bildschirms und Zulassen von Maus- und Tastaturinteraktion) angehalten, während der Datenbankvorgang ausgeführt wird. Bei längerfristigen Vorgängen kann dies eine spürbare Pause der Anwendung verursachen.
Weitere Informationen
Kurzanleitung: Asynchrones Arbeiten mit einer lokalen SQL-Datenbank (Flash)
Kurzanleitung: Asynchrones Arbeiten mit einer lokalen SQL-Datenbank (HTML)
Kurzanleitung: Synchrones Arbeiten mit einer lokalen SQL-Datenbank (Flex)
Kurzanleitung: Synchrones Arbeiten mit einer lokalen SQL-Datenbank (Flash)
Kurzanleitung: Synchrones Arbeiten mit einer lokalen SQL-Datenbank (HTML)
Verwandte API-Elemente
Eigenschaft | Definiert von | ||
---|---|---|---|
autoCompact : Boolean [schreibgeschützt]
Gibt an, ob bei der Erstellung der aktuellen Datenbank das automatische Verdichten aktiviert wurde (der Wert, der für den autoCompact-Parameter beim Aufrufen von open() oder openAsync(), durch den die Datenbank erstellt wurde, angegeben wurde). | SQLConnection | ||
cacheSize : uint
Bietet Zugriff auf die Cachegröße dieser Verbindung, die die Höchstzahl der jeweils auf der Festplatte gespeicherten Datenbankseiten darstellt. | SQLConnection | ||
columnNameStyle : String
Gibt an, wie Spaltennamen im Ergebnis einer „SELECT“-Anweisung wiedergegeben werden. | SQLConnection | ||
connected : Boolean [schreibgeschützt]
Gibt an, ob die „SQLConnection“-Instanz über eine offene Verbindung zu einer Datenbankdatei verfügt. | SQLConnection | ||
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
inTransaction : Boolean [schreibgeschützt]
Gibt an, ob diese Verbindung aktuell an einer Transaktion beteiligt ist. | SQLConnection | ||
isSupported : Boolean [statisch] [schreibgeschützt]
Gibt an, ob die SQLConnection-Klasse auf der aktuellen Plattform unterstützt wird oder nicht. | SQLConnection | ||
lastInsertRowID : Number [schreibgeschützt]
Der letzte von einer SQL „INSERT“-Anweisung erzeugte Zeilenbezeichner. | SQLConnection | ||
pageSize : uint [schreibgeschützt]
Gibt die Datenbankseitengröße (in Byte) an, die bei der Erstellung der aktuellen Datenbank angegeben wurde (der Wert, der für den Parameter „pageSize“ beim Aufrufen von „open()“ oder „openAsync()“, durch den die Datenbank erstellt wurde, angegeben wurde). | SQLConnection | ||
totalChanges : Number [schreibgeschützt]
Gibt die Gesamtzahl der Datenänderungen an, die vorgenommen wurden, seit die Verbindung zur Datenbank hergestellt wurde. | SQLConnection |
Methode | Definiert von | ||
---|---|---|---|
Erstellt eine „SQLConnection“-Instanz. | SQLConnection | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0.0, useWeakReference:Boolean = false):void [override]
Registriert ein Ereignis-Listener-Objekt bei einem EventDispatcher-Objekt, sodass der Listener über ein Ereignis benachrichtigt wird. | SQLConnection | ||
Sammelt statistische Daten über Datenbankindizes und speichert sie in der Datenbank. | SQLConnection | ||
attach(name:String, reference:Object = null, responder:Responder = null, encryptionKey:ByteArray = null):void
Fügt der „SQLConnection“-Instanz unter dem angegenenen Namen eine neue Datenbank hinzu. | SQLConnection | ||
Startet eine Transaktion, in der alle SQL-Anweisungen, die für die Datenbanken der Verbindung ausgeführt wurden, zusammengefasst sind. | SQLConnection | ||
Bricht alle SQL-Anweisungen ab, die aktuell an mit der „SQLConnection“-Instanz verbundenen Datenbanken ausgeführt werden. | SQLConnection | ||
Schließt die aktuelle Datenbankverbindung. | SQLConnection | ||
Übergibt eine vorhandene Transaktion, wodurch alle durch die Transaktionsanweisungen ausgeführten Aktionen dauerhaft auf die Datenbank angewendet werden. | SQLConnection | ||
Gewinnt sämtlichen unbenutzten Platz in der Datenbank zurück. | SQLConnection | ||
Entfernt alle statistischen Daten, die durch einen Aufruf der Methode „analyze()“ erstellt wurden. | SQLConnection | ||
Unterbricht die Verknüpfung einer zusätzlichen Datenbank, die zuvor mithilfe der Methode „attach()“ mit der „SQLConnection“-Instanz verknüpft wurde. | SQLConnection | ||
Sendet ein Ereignis in den Ereignisablauf. | EventDispatcher | ||
Bietet Zugriff auf das Ergebnis, das sich aus einem Aufruf der Methode „loadSchema()“ ergibt. | SQLConnection | ||
Überprüft, ob das EventDispatcher-Objekt Listener für einen bestimmten Ereignistyp registriert hat. | EventDispatcher | ||
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde. | Object | ||
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde. | Object | ||
loadSchema(type:Class = null, name:String = null, database:String = "main", includeColumnSchema:Boolean = true, responder:Responder = null):void
Lädt Schemainformationen von der verbundenen Datenbank oder einer verknüpften Datenbank. | SQLConnection | ||
open(reference:Object = null, openMode:String = "create", autoCompact:Boolean = false, pageSize:int = 1024, encryptionKey:ByteArray = null):void
Öffnet eine synchrone Verbindung zu der Datenbankdatei am angegebenen Speicherort im Dateisystem oder erstellt und öffnet eine neue Datenbankdatei an diesem Speicherort oder öffnet eine Datenbank aus dem Arbeitsspeicher. | SQLConnection | ||
openAsync(reference:Object = null, openMode:String = "create", responder:Responder = null, autoCompact:Boolean = false, pageSize:int = 1024, encryptionKey:ByteArray = null):void
Öffnet eine asynchrone Verbindung zu der Datenbankdatei am angegebenen Speicherort im Dateisystem oder erstellt und öffnet eine neue Datenbankdatei an diesem Speicherort oder öffnet eine Datenbank aus dem Arbeitsspeicher. | SQLConnection | ||
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann. | Object | ||
Ändert den Verschlüsselungsschlüssel einer verschlüsselten Datenbank. | SQLConnection | ||
Mit dieser Methode werden die SQL-Vorgänge seit dem letzten Speicherpunkt bzw. seit dem angegebenen Speicherpunkt übernommen. | SQLConnection | ||
[override]
Entfernt einen Listener aus dem EventDispatcher-Objekt. | SQLConnection | ||
Macht eine vorhandene Transaktion, die mit der Methode „begin()“ erstellt wurde, rückgängig, d. h. alle in der Transaktion durch SQL-Anweisungen vorgenommen Änderungen werden verworfen. | SQLConnection | ||
Nimmt alle SQL-Vorgänge zurück, die seit dem letzten Speicherpunkt bzw. seit dem angegebenen Speicherpunkt ausgeführt wurden. | SQLConnection | ||
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest. | Object | ||
Erstellt einen Speicherpunkt, der eine Art Lesezeichen innerhalb einer Datenbanktransaktion ist. | SQLConnection | ||
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas. | Object | ||
Gibt das angegebene Objekt als String zurück. | Object | ||
Gibt den Grundwert des angegebenen Objekts zurück. | Object | ||
Überprüft, ob bei diesem EventDispatcher-Objekt oder bei einem seiner Vorgänger ein Ereignis-Listener für einen bestimmten Ereignistyp registriert ist. | EventDispatcher |
Ereignis | Übersicht | Definiert von | ||
---|---|---|---|---|
[broadcast event] Wird ausgelöst, wenn Flash Player oder eine AIR-Anwendung den Betriebssystemfokus erhält und aktiv wird. | EventDispatcher | |||
Wird ausgelöst, wenn ein „analyze()“-Vorgang erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „attach()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „begin()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „cancel()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „close()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „commit()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „compact()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
[broadcast event] Wird ausgelöst, wenn Flash Player- oder die AIR-Anwendung den Fokus verliert und inaktiv wird. | EventDispatcher | |||
Wird ausgelöst, wenn der Vorgang einer „deanalyze()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn sich in einer der verbundenen Datenbanken in einer Tabelle Daten aufgrund eines SQL „DELETE“-Befehls ändern. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „detach()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn ein asynchroner Vorgang des „SQLConnection“-Objekts einen Fehler ergibt. | SQLConnection | |||
Wird ausgelöst, wenn sich in einer der verbundenen Datenbanken in einer Tabelle Daten aufgrund eines SQL INSERT-Befehls ändern. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „openAsync()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer reencrypt()-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird abgesetzt, wenn der Vorgang einer releaseSavepoint()-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „rollback()“-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird abgesetzt, wenn der Vorgang einer rollbackToSavepoint()-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer „loadSchema()“-Methode erfolgreich ausgeführt wurde und die Schemaergebnisse bereit sind. | SQLConnection | |||
Wird ausgelöst, wenn der Vorgang einer setSavepoint()-Methode erfolgreich ausgeführt wurde. | SQLConnection | |||
Wird ausgelöst, wenn sich in einer der verbundenen Datenbanken in einer Tabelle Daten aufgrund eines SQL „UPDATE“-Befehls ändern. | SQLConnection |
autoCompact | Eigenschaft |
autoCompact:Boolean
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Gibt an, ob bei der Erstellung der aktuellen Datenbank das automatische Verdichten aktiviert wurde (der Wert, der für den autoCompact
-Parameter beim Aufrufen von open()
oder openAsync()
, durch den die Datenbank erstellt wurde, angegeben wurde). Weist diese Eigenschaft den Wert true
auf, wird nach jedem Schreibvorgang automatisch nicht benutzter Platz aus der Datenbankdatei entfernt, um die Größe der Datei zu minimieren. Weist diese Eigenschaft den Wert false
auf, verbleibt der durch entfernte Daten eingenommene Platz in der Datenbankdatei und wird bei Bedarf wiederverwendet. Selbst wenn autoCompact
den Wert false
aufweist, können Sie die Zurückgewinnung von nicht benutztem Platz in der Datenbank erzwingen, indem Sie die Methode compact()
aufrufen.
Wenn die Eigenschaft connected
den Wert false
aufweist, wird diese Eigenschaft auf false
gesetzt.
Implementierung
public function get autoCompact():Boolean
Verwandte API-Elemente
cacheSize | Eigenschaft |
cacheSize:uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Bietet Zugriff auf die Cachegröße dieser Verbindung, die die Höchstzahl der jeweils auf der Festplatte gespeicherten Datenbankseiten darstellt. Pro Seite sind etwa 1,5 KB Speicher erforderlich (abhängig vom Wert des Parameters pageSize
im Aufruf der Methode open()
oder openAsync()
, mit der die Datenbank erstellt wurde). Die standardmäßige Cache-Größe ist 2000. Wenn eine Anwendung UPDATE
- oder DELETE
-Vorgänge ausführt, durch die viele Zeilen der Datenbank geändert werden, können Sie durch eine Erhöhung der Cache-Größe die Geschwindigkeit auf Kosten eines erhöhten Speicherverbrauchs verbessern.
Implementierung
public function get cacheSize():uint
public function set cacheSize(value:uint):void
Auslöser
IllegalOperationError — Wenn versucht wird, diese Eigenschaft einzustellen, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die Eigenschaft connected weist den Wert false auf) oder wenn es aktuell eine offene Transaktion gibt (die Eigenschaft inTransaction weist den Wert true auf).
|
Verwandte API-Elemente
columnNameStyle | Eigenschaft |
columnNameStyle:String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Gibt an, wie Spaltennamen im Ergebnis einer SELECT
-Anweisung wiedergegeben werden.
Die in der „SQLColumnNameStyle“-Klasse definierten Konstanten repräsentieren die möglichen Werte dieser Eigenschaft:
SQLColumnNameStyle.LONG
gibt an, dass Spaltennamen im Format[tabellenname]_[spaltenname]
zurückgegeben werden.SQLColumnNameStyle.SHORT
gibt an, dass Spaltennamen im Format[spaltenname]
zurückgegeben werden. Gibt es mehrere Spalten mit demselben Namen, wird nur eine Eigenschaft mit diesem Namen zum Ergebnisobjekt hinzugefügt.- Der Standardwert ist
SQLColumnNameStyle.DEFAULT
. Kommt dieser Wert zur Anwendung, werden die Ergebnisspaltennamen gemäß der Anzahl Tabellen in derSELECT
-Anweisung, die ähnliche Spaltennamen aufweisen, formatiert. Wenn die AnweisungSELECT
nur eine Tabelle enthält, wird das kurze Namensformat[spaltenname]
verwendet. Enthält dieSELECT
-Anweisung mehrere verbundene Tabellen und weisen zwei Spalten identische Namen auf, wird für diese das lange Namensformat[tabellenname]_[spaltenname]
verwendet.
Implementierung
public function get columnNameStyle():String
public function set columnNameStyle(value:String):void
Auslöser
IllegalOperationError — Wenn versucht wird, diese Eigenschaft einzustellen, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die Eigenschaft connected hat den Wert false ).
|
Verwandte API-Elemente
connected | Eigenschaft |
inTransaction | Eigenschaft |
isSupported | Eigenschaft |
lastInsertRowID | Eigenschaft |
lastInsertRowID:Number
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Der letzte von einer SQL INSERT
-Anweisung erzeugte Zeilenbezeichner. Ein Zeilenbezeichner dient zur eindeutigen Kennzeichnung einer Zeile in einer Tabelle in der Datenbank. Der Wert wird häufig von der Datenbank erzeugt.
Der Wert lautet „zero“, wenn keine Datenbank verbunden ist oder wenn keine INSERT
-Anweisung ausgeführt wurde.
Den Zeilenbezeichner für die Ausführung einer SQL INSERT
-Anweisung erhalten Sie über die Eigenschaft lastInsertRowID
des „SQLResult“-Objekts, das durch die Methode getResult()
des „SQLStatement“-Objekts zurückgegeben wird (wenn sie aufgerufen wird, nachdem SQLStatement das result
-Ereignis ausgelöst hat).
Weitere Informationen zu Primärschlüsseln und generierten Zeilenbezeichnern finden Sie in den Abschnitten „CREATE TABLE“ und „Expressions“ im Anhang „SQL-Unterstützung in lokalen Datenbanken“.
Implementierung
public function get lastInsertRowID():Number
Verwandte API-Elemente
pageSize | Eigenschaft |
pageSize:uint
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Gibt die Datenbankseitengröße (in Byte) an, die bei der Erstellung der aktuellen Datenbank angegeben wurde (der Wert, der für den Parameter pageSize
beim Aufrufen von open()
oder openAsync()
, durch den die Datenbank erstellt wurde, angegeben wurde).
Wenn die Eigenschaft connected
den Wert false
aufweist, lautet der Wert dieser Eigenschaft 0.
Sie können die Seitengröße einer Datenbank ändern (mithilfe der Methoden open()
oder openAsync()
), solange noch keine Tabelle in der Datenbank erstellt wurde.
Implementierung
public function get pageSize():uint
Verwandte API-Elemente
totalChanges | Eigenschaft |
totalChanges:Number
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Gibt die Gesamtzahl der Datenänderungen an, die vorgenommen wurden, seit die Verbindung zur Datenbank hergestellt wurde. Zusätzlich zu den Änderungen, die durch INSERT
-, DELETE
- und UPDATE
-Anweisungen vorgenommen wurden, enthält dieser Wert auch die durch Auslöser verursachten Änderungen.
Ist die Datenbankverbindung geschlossen, wird der Wert auf „0“ zurückgesetzt. Wenn die SQLConnection-Instanz mit keiner Datenbank verbunden ist, lautet der Wert „0“.
Implementierung
public function get totalChanges():Number
Verwandte API-Elemente
SQLConnection | () | Konstruktor |
public function SQLConnection()
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Erstellt eine „SQLConnection“-Instanz.
Auslöser
SecurityError — wenn der Konstruktor aus einer Sandbox außerhalb der Hauptanwendungs-Sandbox aufgerufen wird.
|
addEventListener | () | Methode |
override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0.0, useWeakReference:Boolean = false):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Registriert ein Ereignis-Listener-Objekt bei einem EventDispatcher-Objekt, sodass der Listener über ein Ereignis benachrichtigt wird. Sie können Ereignis-Listener bei allen Knoten in der Anzeigeliste für eine bestimmte Art von Ereignis, Phase oder Priorität registrieren.
Nachdem Sie einen Ereignis-Listener erfolgreich registriert haben, können Sie seine Priorität nicht durch weitere Aufrufe von addEventListener()
ändern. Um die Priorität eines Listeners zu ändern, müssen Sie zunächst removeListener()
aufrufen. Anschließend können Sie den Listener mit der neuen Prioritätsstufe erneut aufrufen.
Nach der Registrierung des Listeners haben nachfolgende Aufrufe von addEventListener()
mit einem anderen type
- oder useCapture
-Wert eine separate Listener-Registrierung zur Folge. Wenn Sie beispielsweise zuerst einen Listener registrieren, für den useCapture
auf true
gesetzt ist, wird dieser nur während der Aufnahmephase aktiv sein. Wenn Sie addEventListener()
für dasselbe Listener-Objekt erneut aufrufen, diesmal aber useCapture
auf false
gesetzt ist, werden zwei separate Listener angelegt: einer, der während der Aufnahmephase aktiv ist und ein zweiter, der während der Ziel- und Bubbling-Phase aktiv ist.
Sie können einen Ereignis-Listener nicht nur für die Ziel- oder Bubbling-Phase registrieren. Die beiden Phasen hängen während der Registrierung immer zusammen, da Bubbling nur für übergeordnete Elemente des Zielknotens gilt.
Wenn Sie einen Ereignis-Listener nicht mehr brauchen, entfernen sie ihn, indem Sie removeEventListener()
aufrufen. Andernfalls könnte es zu Speicherproblemen kommen. Ereignis-Listener werden nicht automatisch aus dem Speicher entfernt, da der Garbage Collector den Listener nicht entfernt, solange das auslösende Objekt vorhanden ist (sofern der useWeakReference
-Parameter auf true
gesetzt ist).
Beim Kopieren einer EventDispatcher-Instanz werden zugewiesene Ereignis-Listener nicht kopiert. (Wenn ein neu angelegter Knoten einen Ereignis-Listener benötigt, müssen Sie den Listener nach dem Erstellen des Knotens zuweisen.) Wenn Sie jedoch eine EventDispatcher-Instanz verschieben, werden zugewiesene Ereignis-Listener ebenfalls verschoben.
Wenn der Ereignis-Listener bei einem Knoten registriert wird, während mit diesem Knoten ein Ereignis durchgeführt wird, so wird der Ereignis-Listener während der aktuellen Phase nicht ausgelöst, kann aber während einer späteren Phase im Ereignisablauf ausgelöst werden, etwa während der Bubbling-Phase.
Wird ein Ereignis-Listener von einem Knoten entfernt, während mit dem Knoten ein Ereignis durchgeführt wird, so wird er von den aktuellen Aktionen immer noch ausgelöst. Nachdem er entfernt worden ist, wird der Ereignis-Listener nicht wieder aufgerufen (es sei denn er wird für spätere Verarbeitungsvorgänge erneut aufgerufen).
Parameter
type:String — Der Ereignistyp.
| |
listener:Function — Die Listener-Funktion, die das Ereignis verarbeitet. Diese Funktion muss ein Ereignisobjekt als einzigen Parameter akzeptieren und darf keinen Wert zurückgeben, wie das nachfolgende Beispiel zeigt:
function(evt:Event):void Der Name der Funktion ist beliebig. | |
useCapture:Boolean (default = false ) —
Bestimmt, ob der Listener in der Erfassungsphase oder in der Ziel- und Bubbling-Phase arbeitet. Ist useCapture auf true gesetzt, so verarbeitet der Listener das Ereignis nur während der Erfassungsphase und nicht während der Ziel- oder Bubbling-Phase. Hat useCapture hingegen den Wert false , verarbeitet der Listener das Ereignis nur während der Ziel- oder Bubbling-Phase. Um auf das Ereignis in allen drei Phasen zu warten, rufen Sie addEventListener() zweimal auf; einmal ist useCapture auf true gesetzt, und beim zweiten Mal hat useCapture den Wert false .
| |
priority:int (default = 0.0 ) — Die Prioritätsstufe des Ereignis-Listeners. Die Priorität wird durch eine vorzeichenbehaftete 32-Bit-Ganzzahl zugewiesen. Je höher die Zahl, desto höher die Priorität. Alle Listener mit der Priorität n werden vor Listenern mit der Priorität n -1 verarbeitet. Wenn zwei oder mehr Listener die gleiche Priorität aufweisen, werden sie in der Reihenfolge verarbeitet, in der sie hinzugefügt wurden. Die Standardpriorität ist 0.
| |
useWeakReference:Boolean (default = false ) — Bestimmt, ob der Verweis auf den Listener stark oder schwach ist. Ein starker Verweis (der Standard) verhindert, dass der Listener von einem Garbage Collector entfernt wird. Ein schwacher Verweis hingegen nicht. Funktionen von Mitgliedern auf Klassenebene werden nicht vom Garbagekollektor entfernt. Daher können Sie |
analyze | () | Methode |
public function analyze(resourceName:String = null, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Sammelt statistische Daten über Datenbankindizes und speichert sie in der Datenbank. Diese Statistiken können dann vom Abfrageoptimierer verwendet werden (der Teil der Datenbank-Engine, der die effizienteste Ausführungsweise für jede Anweisung bestimmt). Aufgrund dieser Statistiken kann der Abfrageoptimierer eine bessere Entscheidung treffen, welche Indexpositionen bei der Ausführung einer bestimmten Abfrage angewendet werden sollen.
Wenn für eine Datenbank Indexpositionen definiert wurden, aber die Methode analyze()
wurde nicht aufgerufen, werden zur Laufzeit Anweisungen mithilfe dieser Indexpositionen ausgeführt. Ohne die zusätzlichen statistischen Daten, die durch die analyze()
-Methode generiert werden, wird zur Laufzeit möglicherweise nicht die effizienteste Indexposition für eine bestimmte Abfrage ausgewählt.
Ändern sich die Daten einer Tabelle (aufgrund einer INSERT
-, UPDATE
- oder DELETE
-Anweisung), werden auch die dieser Tabelle zugeordneten Indizes geändert. Die durch die Methode analyze()
erzeugten statistischen Informationen werden dagegen nicht automatisch aktualisiert. Daher ist es im Allgemeinen empfehlenswert, die analyze()
-Methode nach einer größeren Anzahl von Datenänderungen erneut aufzurufen. Welcher Vorteil aus einer erneuten Ausführung von analyze()
gezogen werden kann, hängt jedoch von mehreren Faktoren ab: der Anzahl der für eine Tabelle definierten Indizes, dem Verhältnis zwischen der Anzahl der geänderten Zeilen und der Gesamtzahl von Zeilen in der Tabelle, wie stark die Abweichung in den indizierten Daten der Tabelle ist und wie stark sich die Daten vor und nach der Änderung unterscheiden.
Mit dem resourceName
-Parameter geben Sie an, ob der Vorgang für die Indizes aller verknüpften Datenbanken, einer bestimmten Datenbank oder einer bestimmten Tabelle ausgeführt werden soll.
Durch jeden Aufruf dieser Methode werden die zuvor erstellten statistischen Daten gelöscht und für die im Parameter resourceName
angegebene Datenbank oder Tabelle neu erstellt (oder alle Tabellen in allen verbundenen Datenbanken, wenn resourceName
den Wert null
) aufweist. Diese Methode kann jederzeit aufgerufen werden, während eine Verbindung zur Datenbank besteht. Der analyze()
-Vorgang und die daraus resultierenden statistischen Daten sind nicht in einer Transaktion enthalten. Es empfiehlt sich jedoch nicht, analyze()
aufzurufen, wenn in der Datenbank eine Transaktion ausgeführt wird (die inTransaction
-Eigenschaft den Wert true
aufweist). Daten, ein Tabellenschema oder Indexänderungen, die zwar in der Transaktion ausgeführt aber noch nicht angewendet wurden, werden bei einem Aufruf von analyze()
nicht erfasst, d. h. die aus dem Aufruf von analyze()
resultierenden Daten sind veraltet, sobald die Transaktion angewendet wird.
Sie können die mit der Methode analyze()
erstellten statistischen Daten mit der Methode deanalyze()
entfernen.
Parameter
resourceName:String (default = null ) — Der Name der Datenbank oder Tabelle, deren Indizes analysiert werden. Wenn es sich bei der angegebenen Ressource um eine Tabelle handelt, deren Name nur einmal in allen verknüpften Datenbanken vorkommt, brauchen Sie nur den Tabellennamen anzugeben. Sie können einen Tabellennamen jedoch auch als [datenbankname].[tabellenname] angeben, um bei nicht eindeutigen Tabellennamen Missverständnisse zu vermeiden. Weist der Parameter resourceName den Wert null (Standard) auf, werden alle Indizes in allen verknüpften Datenbanken analysiert.
| |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein analyze - oder error -Ereignis ausgelöst.
|
Ereignisse
analyze: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
IllegalOperationError — Wenn diese Methode aufgerufen wird und die „SQLConnection“-Instanz ist an keine Datenbank angeschlossen, hat die connected -Eigenschaft den Wert false .
| |
SQLError — wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
attach | () | Methode |
public function attach(name:String, reference:Object = null, responder:Responder = null, encryptionKey:ByteArray = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Fügt der „SQLConnection“-Instanz unter dem angegenenen Namen eine neue Datenbank hinzu. Nachdem eine Datenbank verknüpft wurde, können Sie sie in SQL-Anweisungen verwenden, die an dieser „SQLConnection“-Instanz ausgeführt werden.
Wenn bereits eine Datenbank mit dem angegebenen Namen verknüpft wurde, wird durch das Aufrufen von attach()
ein Fehler ausgelöst. Sie können dieselbe Datenbank jedoch mehrfach mithilfe von eindeutigen Namen verknüpfen. Mit einer „SQLConnection“-Instanz können bis zu zehn Datenbanken verknüpft werden.
Jede SQL-Anweisung kann auf einer verknüpften Datenbank ausgeführt werden, und zwar mithilfe von attach()
, das auf der Hauptdatenbank ausgeführt werden kann (die Datenbank, die mithilfe von open()
oder openAsync()
verknüpft wurde). Eine SQL-Anweisung kann auf Tabellen in allen Datenbanken zugreifen, die mit der der Anweisung zugeordneten „SQLConnection“-Instanz verknüpft sind, einschließlich dem Zugreifen auf Tabellen in mehreren Datenbanken von einer Anweisung aus. Wenn zur Laufzeit Tabellennamen in einer Anweisung aufgelöst werden, werden die Datenbanken der „SQLConnection“-Instanz in der Reihenfolge ihrer Verknüpfung durchsucht, und zwar beginnend mit der Datenbank, die mithilfe der Methode open()
oder openAsync()
verknüpft wurde. Geben Sie in der Anweisung den Datenbanknamen an (wie in der Methode attach()
im Parameter name
angegeben), um einen Tabellennamen explizit zu qualifizieren.
Eine mithilfe der Methode attach()
verknüpfte Datenbank können Sie mithilfe der Methode detach()
entfernen. Durch das Schließen der SQLConnection-Instanz (durch Aufrufen der Methode close()
), werden die Verknüpfungen zu allen verknüpften Datenbanken aufgehoben.
Für die verknüpfte Datenbank wird der gleiche Ausführungsmodus (synchron oder asynchron) wie für die Hauptdatenbank verwendet. Ausschlaggebend ist dabei, ob die Hauptdatenbank mithilfe der Methode open()
oder openAsync()
verknüpft wurde.
Parameter
name:String — Der Name, mit dem die neu verbundene Datenbank bezeichnet wird. Mit diesem Namen können Sie in SQL-Anweisungen ausdrücklich darauf hinweisen, dass eine Tabelle zu einer bestimmten Datenbank gehört, wenn Sie den Namen im Format [datenbankname].[tabellenname] angeben. Die Namen „main“ und „temp“ sind reserviert und sind nicht verfügbar.
| |
reference:Object (default = null ) — Ein Verweis auf die zu verknüpfende Datenbankdatei (eine „flash.filesystem.File“-Instanz). Wenn auf eine nicht existierende Datei verwiesen wird, wird entweder eine neue Datenbankdatei erstellt oder ein Fehler ausgelöst. Das hängt von dem Wert ab, der für den Parameter openMode im Aufruf von open() oder openAsync() angegeben wurde, mit dem die Verbindung zur Hauptdatenbank hergestellt wurde.
Weist der Parameter den Wert | |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein attach - oder error -Ereignis ausgelöst.
| |
encryptionKey:ByteArray (default = null ) — Der Schlüssel für die Verschlüsselung der Datenbankdatei. Wenn durch das Aufrufen von attach() eine Datenbank erstellt wird, wird diese mithilfe des festgelegten Schlüssels verschlüsselt. Wenn durch das Aufrufen eine bestehende verschlüsselte Datenbank verknüpft wird, muss der Wert dem Schlüssel der Datenbank entsprechen; andernfalls tritt ein Fehler auf. Wenn die zu verknüpfende Datenbank nicht verschlüsselt ist oder eine unverschlüsselte Datenbank erstellt werden soll, muss der Wert der Standardwert null sein.
Ein gültiger Verschlüsselungsschlüssel hat eine Länge von 16 Byte. Eine im Speicher abgelegte Datenbank kann nicht verschlüsselt werden. Deshalb muss dieser Parameter Entspricht beim Verknüpfen einer verschlüsselten Datenbank der Verschlüsselungsschlüssel nicht jenem der Datenbank, so tritt ein Ausnahmefehler auf. Im synchronen Ausführungsmodus wird ein SQLError-Ausnahmefehler ausgegeben. Im asynchronen Ausführungsmodus wird ein SQLErrorEvent ausgelöst, wobei die Der |
Ereignisse
attach: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
ArgumentError — Wenn der name -Paramenter ein leerer String ("" ) oder null ist.
| |
ArgumentError — Wenn es sich bei dem für den Parameter reference angegebenen Wert nicht um eine flash.filesystem.File-Instanz handelt
| |
ArgumentError — Wenn das encryptionKey -Argument nicht null ist und seine length nicht 16 Byte beträgt
| |
ArgumentError — Wenn der reference -Parameter null und das encryptionKey -Argument nicht null ist
| |
IllegalOperationError — Wenn die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft hat den Wert false ), oder wenn aktuell eine Transaktion geöffnet ist (die inTransaction -Eigenschaft hat den Wert true ).
| |
SQLError — wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
begin | () | Methode |
public function begin(option:String = null, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Startet eine Transaktion, in der alle SQL-Anweisungen, die für die Datenbanken der Verbindung ausgeführt wurden, zusammengefasst sind.
Standardmäßig wird jede SQL-Anweisung in einer separaten Transaktion ausgeführt, und die Transaktion ist beendet, wenn die Ausführung der Anweisung erfolgreich beendet wird oder fehlschlägt. Mithilfe der Methode begin()
wird eine neue, manuelle Transaktion erstellt. Ab diesem Zeitpunkt erfolgt die Ausführung aller SQL-Anweisungen an der „SQLConnection“-Instanz innerhalb der Transaktion, und alle durch die Anweisung vorgenommenen Aktionen und Änderungen können als eine Gruppe übergeben (dauerhaft gemacht) oder rückgängig gemacht werden.
Beenden Sie eine Transaktion durch Aufrufen der commit()
- oder rollback()
-Methode, abhängig davon, ob die durch die Anweisungen der Transaktion vorgenommenen Änderungen dauerhaft gemacht oder verworfen werden sollen.
Verschachtelte Aufrufe von begin()
werden ignoriert. Sie können Speicherpunkte erstellen, die eine Art Lesezeichen innerhalb einer Transaktion sind, indem Sie die setSavepoint()
-Methode aufrufen. SQL-Anweisungen lassen sich dann anwenden oder zurücknehmen, indem Sie die releaseSavepoint()
-Methode oder die rollbackToSavepoint()
-Methode aufrufen. Wenn eine Transaktion jedoch durch einen Aufruf von begin()
gestartet wurde, werden Änderungen erst dann dauerhaft von der Datenbank übernommen, wenn die commit()
-Methode aufgerufen wird.
Wird die Datenbankverbindung geschlossen, während eine Transaktion geöffnet ist, macht AIR die Transaktion automatisch rückgängig. (Hinweis: Bei AIR 1.1 und niedrigeren Versionen werden offene Transaktionen beim Schließen einer Verbindung automatisch festgeschrieben.)
Eine Transaktion ist nicht auf Anweisungsausführungen in einer Datenbank beschränkt; sondern es können auch Anweisungen an verschiedenen verknüpften Datenbanken ausgeführt werden.
Parameter
option:String (default = null ) — Gibt die Sperrstrategie an, die von der Transaktion verwendet wird. Hierbei kann es sich um eine Konstante handeln, die in der „SQLTransactionLockType“-Klasse definiert wurde:
Der Standardwert ( | |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein begin - oder error -Ereignis ausgelöst.
|
Ereignisse
begin: — Wird ausgelöst, wenn der Vorgang abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
IllegalOperationError — Wenn diese Methode aufgerufen wird und die „SQLConnection“-Instanz ist an keine Datenbank angeschlossen, hat die connected -Eigenschaft den Wert false .
| |
ArgumentError — Wenn es sich bei der angegebenen Option um keine der SQLTransactionLockType-Konstanten handelt.
| |
SQLError — wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
rollback()
setSavepoint()
releaseSavepoint()
rollbackToSavepoint()
flash.data.SQLTransactionLockType
Beispiel ( Verwendung dieses Beispiels )
INSERT
-Anweisungen innerhalb einer Transaktion gezeigt. Zunächst wird der Tabelle „employees“ (Mitarbeiter) eine Zeile hinzugefügt. Als Nächstes wird der primäre Schlüssel der neu eingefügten Zeile abgerufen und verwendet, um der verknüpften Tabelle „phoneNumbers“ eine Zeile hinzuzufügen.
package { import flash.data.SQLConnection; import flash.data.SQLResult; import flash.data.SQLStatement; import flash.display.Sprite; import flash.events.SQLErrorEvent; import flash.events.SQLEvent; import flash.filesystem.File; public class MultiInsertTransactionExample extends Sprite { private var conn:SQLConnection; private var insertEmployee:SQLStatement; private var insertPhoneNumber:SQLStatement; public function MultiInsertTransactionExample():void { // define where to find the database file var appStorage:File = File.applicationStorageDirectory; var dbFile:File = appStorage.resolvePath("ExampleDatabase.db"); // open the database connection conn = new SQLConnection(); conn.addEventListener(SQLErrorEvent.ERROR, errorHandler); conn.addEventListener(SQLEvent.OPEN, openHandler); conn.openAsync(dbFile); } // Called when the database is connected private function openHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.OPEN, openHandler); // start a transaction conn.addEventListener(SQLEvent.BEGIN, beginHandler); conn.begin(); } // Called when the transaction begins private function beginHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.BEGIN, beginHandler); // create and execute the first SQL statement: // insert an employee record insertEmployee = new SQLStatement(); insertEmployee.sqlConnection = conn; insertEmployee.text = "INSERT INTO employees (lastName, firstName, email) " + "VALUES (:lastName, :firstName, :email, :birthday)"; insertEmployee.parameters[":lastName"] = "Smith"; insertEmployee.parameters[":firstName"] = "Bob"; insertEmployee.parameters[":email"] = "bsmith@example.com"; insertEmployee.parameters[":birthday"] = new Date(1971, 8, 12); insertEmployee.addEventListener(SQLEvent.RESULT, insertEmployeeHandler); insertEmployee.addEventListener(SQLErrorEvent.ERROR, errorHandler); insertEmployee.execute(); } // Called after the employee record is inserted private function insertEmployeeHandler(event:SQLEvent):void { insertEmployee.removeEventListener(SQLEvent.RESULT, insertEmployeeHandler); insertEmployee.removeEventListener(SQLErrorEvent.ERROR, errorHandler); // Get the employee id of the newly created employee row var result:SQLResult = insertEmployee.getResult(); var employeeId:Number = result.lastInsertRowID; // Add a phone number to the related phoneNumbers table insertPhoneNumber = new SQLStatement(); insertPhoneNumber.sqlConnection = conn; insertPhoneNumber.text = "INSERT INTO phoneNumbers (employeeId, type, number) " + "VALUES (:employeeId, :type, :number)"; insertPhoneNumber.parameters[":employeeId"] = employeeId; insertPhoneNumber.parameters[":type"] = "Home"; insertPhoneNumber.parameters[":number"] = "(555) 555-1234"; insertPhoneNumber.addEventListener(SQLEvent.RESULT, insertPhoneNumberHandler); insertPhoneNumber.addEventListener(SQLErrorEvent.ERROR, errorHandler); insertPhoneNumber.execute(); } // Called after the phone number record is inserted private function insertPhoneNumberHandler(event:SQLEvent):void { insertPhoneNumber.removeEventListener(SQLEvent.RESULT, insertPhoneNumberHandler); insertPhoneNumber.removeEventListener(SQLErrorEvent.ERROR, errorHandler); // No errors so far, so commit the transaction conn.addEventListener(SQLEvent.COMMIT, commitHandler); conn.commit(); } // Called after the transaction is committed private function commitHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.COMMIT, commitHandler); trace("Transaction complete"); } // Called whenever an error occurs private function errorHandler(event:SQLErrorEvent):void { // If a transaction is happening, roll it back if (conn.inTransaction) { conn.addEventListener(SQLEvent.ROLLBACK, rollbackHandler); conn.rollback(); } trace(event.error.message); trace(event.error.details); } // Called when the transaction is rolled back private function rollbackHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.ROLLBACK, rollbackHandler); // add additional error handling, close the database, etc. } } }
DELETE
-Anweisungen innerhalb einer Transaktion gezeigt. Die Transaktion wird verwendet, um einen Mitarbeiterdatensatz zu löschen. Zunächst werden die entsprechenden Zeilen in der Spalte „phoneNumbers“ gelöscht. Als Nächstes wird die Zeile mit dem Mitarbeiterdatensatz aus der Tabelle „employees“ gelöscht.
package { import flash.data.SQLConnection; import flash.data.SQLResult; import flash.data.SQLStatement; import flash.display.Sprite; import flash.events.SQLErrorEvent; import flash.events.SQLEvent; import flash.filesystem.File; public class MultiDeleteTransactionExample extends Sprite { private var conn:SQLConnection; private var deleteEmployee:SQLStatement; private var deletePhoneNumbers:SQLStatement; private var employeeIdToDelete:Number = 25; public function MultiDeleteTransactionExample():void { // define where to find the database file var appStorage:File = File.applicationStorageDirectory; var dbFile:File = appStorage.resolvePath("ExampleDatabase.db"); // open the database connection conn = new SQLConnection(); conn.addEventListener(SQLErrorEvent.ERROR, errorHandler); conn.addEventListener(SQLEvent.OPEN, openHandler); conn.openAsync(dbFile); } // Called when the database is connected private function openHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.OPEN, openHandler); // start a transaction conn.addEventListener(SQLEvent.BEGIN, beginHandler); conn.begin(); } // Called when the transaction begins private function beginHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.BEGIN, beginHandler); // Create and execute the first SQL statement: // Delete an employee's phone number records deletePhoneNumbers = new SQLStatement(); deletePhoneNumbers.sqlConnection = conn; deletePhoneNumbers.text = "DELETE FROM phoneNumbers " + "WHERE employeeId = :employeeId"; deletePhoneNumbers.parameters[":employeeId"] = employeeIdToDelete; deletePhoneNumbers.addEventListener(SQLEvent.RESULT, deletePhoneNumbersHandler); deletePhoneNumbers.addEventListener(SQLErrorEvent.ERROR, errorHandler); deletePhoneNumbers.execute(); } // Called after the phone number records are deleted private function deletePhoneNumbersHandler(event:SQLEvent):void { deletePhoneNumbers.removeEventListener(SQLEvent.RESULT, deletePhoneNumbersHandler); deletePhoneNumbers.removeEventListener(SQLErrorEvent.ERROR, errorHandler); deleteEmployee = new SQLStatement(); deleteEmployee.sqlConnection = conn; deleteEmployee.text = "DELETE FROM employees " + "WHERE employeeId = :employeeId"; deleteEmployee.parameters[":employeeId"] = employeeIdToDelete; deleteEmployee.addEventListener(SQLEvent.RESULT, deleteEmployeeHandler); deleteEmployee.addEventListener(SQLErrorEvent.ERROR, errorHandler); deleteEmployee.execute(); } // Called after the employee record is deleted private function deleteEmployeeHandler(event:SQLEvent):void { deleteEmployee.removeEventListener(SQLEvent.RESULT, deleteEmployeeHandler); deleteEmployee.removeEventListener(SQLErrorEvent.ERROR, errorHandler); // No errors so far, so commit the transaction conn.addEventListener(SQLEvent.COMMIT, commitHandler); conn.commit(); } // Called after the transaction is committed private function commitHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.COMMIT, commitHandler); trace("Transaction complete"); } // Called whenever an error occurs private function errorHandler(event:SQLErrorEvent):void { // If a transaction is happening, roll it back if (conn.inTransaction) { conn.addEventListener(SQLEvent.ROLLBACK, rollbackHandler); conn.rollback(); } trace(event.error.message); trace(event.error.details); } // Called when the transaction is rolled back private function rollbackHandler(event:SQLEvent):void { conn.removeEventListener(SQLEvent.ROLLBACK, rollbackHandler); // add additional error handling, close the database, etc. } } }
cancel | () | Methode |
public function cancel(responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Bricht alle SQL-Anweisungen ab, die aktuell an mit der „SQLConnection“-Instanz verbundenen Datenbanken ausgeführt werden. Mithilfe dieser Methode können Sie langfristige oder außer Kontrolle geratene Abfragen stoppen.
Werden beim Aufrufen der cancel()
-Methode gerade Anweisungen ausgeführt, werden diese Vorgänge abgebrochen und alle unvollständigen Aktualisierungen oder Transaktionen werden rückgängig gemacht. Wenn aktuell keine Anweisungen ausgeführt werden, geschieht mit Ausnahme der Rückgängigmachung einer offenen Transaktion nichts.
Parameter
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein cancel - oder error -Ereignis ausgelöst.
|
Ereignisse
cancel: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
IllegalOperationError — Wenn diese Methode aufgerufen wird und die „SQLConnection“-Instanz ist an keine Datenbank angeschlossen, hat die connected -Eigenschaft den Wert false .
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
close | () | Methode |
public function close(responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Schließt die aktuelle Datenbankverbindung. Die Verbindung zu allen verknüpften Datenbanken werden ebenfalls unterbrochen.
Wenn es beim Aufrufen von close()
eine offene Transaktion gibt, wird die Transaktion zurückgenommen. Wenn eine SQLConnection-Instanz durch einen Garbagekollektor entfernt wird, wird zur Laufzeit automatisch close()
aufgerufen, auch wenn eine AIR-Anwendung geschlossen wird, während eine SQLConnection noch mit einer Datenbank verbunden ist.
Parameter
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein close - oder error -Ereignis ausgelöst.
|
Ereignisse
close: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
commit | () | Methode |
public function commit(responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Übergibt eine vorhandene Transaktion, wodurch alle durch die Transaktionsanweisungen ausgeführten Aktionen dauerhaft auf die Datenbank angewendet werden.
Dazwischenliegende Speicherpunkte, die als eine Art Lesezeichen innerhalb einer Transaktion fungieren, lassen sich durch einen Aufruf der setSavepoint()
-Methode erstellen. Durch das Verwenden von Speicherpunkten können Sie Teile einer Transaktion übernehmen, indem Sie die releaseSavepoint()
-Methode aufrufen, oder Teile einer Transaktion zurücknehmen, indem Sie die rollbackToSavepoint()
-Methode aufrufen. Wenn eine Transaktion jedoch mit der begin()
-Methode geöffnet wurde, werden Änderungen nicht dauerhaft in der Datenbank gespeichert, bis die gesamte Transaktion durch einen Aufruf der commit()
-Methode übernommen werden.
Für eine Transaktion, die Speicherpunkte verwendet, werden alle Änderungen, die mithilfe der rollbackToSavepoint()
-Methode zurückgenommen werden, nicht übernommen, wenn die gesamte Transaktion übernommen wird. Anweisungen, die mit releaseSavepoint()
übermittelt wurden oder deren Speicherpunkte nicht übermittelt oder zurückgenommen wurden, werden von der Datenbank übernommen.
Parameter
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein commit - oder error -Ereignis ausgelöst.
|
Ereignisse
commit: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang mit einem Fehlschlag abgeschlossen wurde.
|
Auslöser
IllegalOperationError — Wenn die Methode aufgerufen wird, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft weist den Wert false auf) oder wenn aktuell keine Transaktion offen ist (die inTransaction -Eigenschaft weist den Wert false auf).
|
Verwandte API-Elemente
compact | () | Methode |
public function compact(responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Gewinnt sämtlichen unbenutzten Platz in der Datenbank zurück. Wenn ein Objekt (Tabelle, Indexposition oder Auslöser) aus der Datenbank entfernt wird, bleibt ein leerer Platz zurück. Dadurch wird die Datenbank unnötig größer, aber andererseits können INSERT
-Vorgänge schneller ausgeführt werden. Allmählich wird die Struktur der Datenbankdatei durch INSERT
- und DELETE
-Vorgänge fragmentiert, wodurch der Zugriff auf den Datenbankinhalt verlangsamt wird. Mithilfe dieser Methode wird die Datenbankdatei verdichtet, leere Seiten werden eliminiert, Tabellendaten werden ausgerichtet, sodass sie zusammenhängend sind und die Struktur der Datenbankdatei wird bereinigt.
An einer verknüpften Datenbankdatei kann der Vorgang compact()
nicht ausgeführt werden; er kann nur an der ursprünglichen oder Hauptdatenbankdatei, die mithilfe der „SQLConnection“-Instanz geöffnet wurde, ausgeführt werden. Wenn eine Transaktion aktiv ist, schlägt dieser Vorgang fehl und hat keine Auswirkung auf eine Datenbank im Speicher.
Parameter
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein compact - oder error -Ereignis ausgelöst.
|
Ereignisse
compact: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
IllegalOperationError — Wenn die Methode aufgerufen wird, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft weist den Wert false auf) oder wenn aktuell eine Transaktion ausgeführt wird (die inTransaction -Eigenschaft weist den Wert true auf).
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
deanalyze | () | Methode |
public function deanalyze(responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Entfernt alle statistischen Daten, die durch einen Aufruf der Methode analyze()
erstellt wurden.
Da die durch die Methode analyze()
erzeugten statistischen Daten in der Datenbank Platz einnehmen, können Sie durch Aufrufen von deanalyze()
Platz zurückgewinnen, der z. B. nach dem Entfernen von Indizes oder Tabellen frei geworden ist.
Dieser Vorgang ist in einer aktiven Transaktion nicht eingeschlossen.
Parameter
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein deanalyze - oder error -Ereignis ausgelöst.
|
Ereignisse
deanalyze: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
IllegalOperationError — Wenn diese Methode aufgerufen wird und die „SQLConnection“-Instanz ist an keine Datenbank angeschlossen, hat die connected -Eigenschaft den Wert false .
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
detach | () | Methode |
public function detach(name:String, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Unterbricht die Verknüpfung einer zusätzlichen Datenbank, die zuvor mithilfe der Methode attach()
mit der „SQLConnection“-Instanz verknüpft wurde. Sie können eine Datenbank mehrfach unter verschiedenen Namen verknüpfen. Bei der Trennung einer Verbindung bleiben die anderen Verbindungen intakt. Die Verbindung zu einer Datenbank kann nicht unterbrochen werden, wenn eine offene Transaktion vorliegt (die inTransaction
-Eigenschaft weist den Wert true
auf).
Parameter
name:String — Der Name der Datenbank, deren Verbindung unterbrochen werden soll.
| |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein detach - oder error -Ereignis ausgelöst.
|
Ereignisse
detach: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
ArgumentError — Wenn das name -Argument den Wert null aufweist oder einen leeren String ("" ) enthält.
| |
IllegalOperationError — Wenn diese Methode aufgerufen wird, während die „SQLConnection“-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft weist den Wert false auf) oder wenn die „SQLConnection“-Instanz eine offene Transaktion aufweist (die inTransaction -Eigenschaft weist den Wert true auf).
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
getSchemaResult | () | Methode |
public function getSchemaResult():SQLSchemaResult
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Bietet Zugriff auf das Ergebnis, das sich aus einem Aufruf der Methode loadSchema()
ergibt. Mit der Methode getSchemaResult()
werden die ältesten Ergebnisse in der Warteschlange zuerst verarbeitet. Jedes Mal, wenn das Aufrufen der loadSchema()
-Methode abgeschlossen wird (jedes Mal, wenn im asynchronen Ausführungsmodus das schema
-Ereignis ausgelöst wird), wird der Warteschlange ein neues SQLSchemaResult-Objekt hinzugefügt. Bei jedem Aufrufen der Methode getSchemaResult()
wird das älteste Ergebnis (das Ergebnis, das der Warteschlange als erstes hinzugefügt wurde) zurückgegeben und aus der Warteschlange entfernt. Wenn die Warteschlange keine weiteren Objekte mehr enthält, gibt getSchemaResult()
den Wert null
zurück.
Ist die Datenbankverbindung geschlossen, gibt die Methode den Wert null
zurück.
SQLSchemaResult |
Verwandte API-Elemente
loadSchema | () | Methode |
public function loadSchema(type:Class = null, name:String = null, database:String = "main", includeColumnSchema:Boolean = true, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Lädt Schemainformationen von der verbundenen Datenbank oder einer verknüpften Datenbank. Das Schema gibt die Struktur der Tabellen, Spalten, Indizes und Auslöser in der Datenbank an.
Der Zugriff auf das geladene Schema erfolgt mithhilfe der Methode SQLConnection.getSchemaResult()
.
Im asynchronen Ausführungsmodus wird bei einem erfolgreichen Abschluss des Vorgangs ein schema
-Ereignis ausgelöst. Schlägt der Vorgang fehl, wird ein error
-Ereignis ausgelöst.
Mit der Kombination aus den Werten der Parameter type
und name
bestimmen Sie, welcher Typ von Schemadaten mithilfe der loadSchema()
-Methode erzeugt wird, und folglich bestimmen Sie damit auch die Werte der Eigenschaften der erzeugten SQLSchemaResult-Instanz. Die folgende Tabelle gibt die gültigen Paare aus type
und name
sowie die damit erzeugten Schemadaten an:
Argument type | Argument name | Ruft Schemadaten ab für: |
---|---|---|
„null“ | „null“ | alle Objekte in der Datenbank (alle Tabellen, Ansichten, Auslöser und Indizes) |
SQLIndexSchema | „null“ | alle Indizes in der Datenbank |
SQLIndexSchema | gültiger Tabellenname | alle in der angegebenen Tabelle definierten Indizes |
SQLIndexSchema | gültiger Indexname | der angegebene Index |
SQLTableSchema | „null“ | alle Tabellen in der Datenbank |
SQLTableSchema | gültiger Tabellenname | die angegebene Tabelle |
SQLTriggerSchema | „null“ | alle Auslöser in der Datenbank |
SQLTriggerSchema | gültiger Tabellenname | alle der angegebenen Tabelle zugeordneten Auslöser |
SQLTriggerSchema | gültiger Ansichtsname | alle der angegebenen Ansicht zugeordneten Auslöser |
SQLTriggerSchema | gültiger Auslösername | der angegebene Auslöser |
SQLViewSchema | „null“ | alle Ansichten in der Datenbank |
SQLViewSchema | gültiger Ansichtsname | die angegebene Ansicht |
Entspricht die Kombination aus type
- und name
-Argumenten keiner der angegebenen Kombinationen, wird im asynchronen Ausführungsmodus ein error
-Ereignis bzw. im synchronen Ausführungsmodus eine Ausnahme ausgelöst. Beispiel: Das Argument type
weist den Wert SQLViewSchema
und das Argument name
weist als Wert den Name einer Tabelle (nicht den Namen einer Ansicht) auf. Die daraufhin ausgelöste Fehlermeldung gibt an, dass die Datenbank kein Objekt des angegebenen Typs mit dem angegebenen Namen enthält.
Ist die Datenbank leer (enthält keine Tabellen, Ansichten, Auslöser oder Indizes), tritt beim Aufrufen der loadSchema()
-Methode ein Fehler auf.
Parameter
type:Class (default = null ) — Gibt den Typ des zu ladenden Schemas an. Der Wert null (der Standard) gibt an, dass alle Schemainformationen geladen werden sollen. Durch die Eingabe eines anderes Wertes als null für diesen Parameter engen Sie den Umfang des resultierenden Schemas ein, potenziell unnötige Informationen werden aus dem Ergebnis entfernt und der Vorgang wird effizienter. Bei dem Wert muss es sich um den Klassennamen einer der folgenden Klassen handeln:
| |
name:String (default = null ) — Zeigt an, welches Ressourcenschema geladen ist. Wie dieser Wert verwendet wird, hängt vom angegebenen type -Argument ab. In der Regel handelt es sich dabei um den Namen eines Datenbankobjekts, wie etwa einem Tabellen-, Index- oder Ansichtsnamen. Wenn Sie einen Wert angeben, werden nur Schemainformationen für das Datenbankobjekt mit dem angegebenen Namen in die Ergebnisse aufgenommen.
Ist der angegebene Wert ungültig, wird ein Weist das Argument | |
database:String (default = "main ") — Der Name der Datenbank, deren Schema geladen wird. Wenn der angegebene Wert ungültig ist, wird ein error -Ereignis ausgelöst.
| |
includeColumnSchema:Boolean (default = true ) — Gibt an, ob das Ergebnis Schemainformationen für die Spalten von Tabellen und Ansichten enthält.
| |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein schema - oder error -Ereignis ausgelöst.
|
Ereignisse
schema: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang mit einem Fehlschlag abgeschlossen wurde.
|
Auslöser
IllegalOperationError — Wenn diese Methode aufgerufen wird und die SQLConnection-Instanz an keine Datenbank angeschlossen ist (die Eigenschaft connected hat den Wert false ).
| |
ArgumentError — Wenn der angegebene Wert für das Argument type keiner der zulässigen Typen ist.
| |
SQLError — Wenn im synchronen Ausführungsmodus ein ungültiger Wert für die Parameter „name“ oder „database“ angegeben wird.
|
Verwandte API-Elemente
open | () | Methode |
public function open(reference:Object = null, openMode:String = "create", autoCompact:Boolean = false, pageSize:int = 1024, encryptionKey:ByteArray = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Öffnet eine synchrone Verbindung zu der Datenbankdatei am angegebenen Speicherort im Dateisystem oder erstellt und öffnet eine neue Datenbankdatei an diesem Speicherort oder öffnet eine Datenbank aus dem Arbeitsspeicher. Wenn die Datenbank mithilfe dieser Methode geöffnet wird, werden das Erstellen und Öffnen der Datenbank sowie andere, mithilfe dieser „SQLConnection“-Instanz ausgeführte Vorgänge synchron ausgeführt. Dazu gehören auch die Anweisungsausführung und andere Vorgänge, die durch eine dieser „SQLConnection“-Instanz zugewiesene „SQLStatement“-Instanz ausgeführt werden. Um Vorgänge asynchron auszuführen, müssen Sie die Datenbankverbindung stattdessen mithilfe der Methode openAsync()
öffnen.
Nachdem die Verbindung zu einer Datenbank hergestellt wurde, verwenden Sie eine SQLStatement-Instanz, um SQL-Befehle auszuführen. Vorgänge auf Datenbankebene wie das Starten oder Beenden von Transaktionen, das Laden von Schemainformationen und andere Vorgänge werden unter Verwendung der SQLConnection-Instanz ausgeführt.
Eine Datenbank, zu der die Verbindung mithilfe der Methode open()
hergestellt wird, erhält automatisch den Datenbanknamen „main“. Mit diesem Namen können Sie Tabellennamen explizit in SQL-Anweisungen qualifizieren, indem Sie sie im Format [datenbankname] angeben.[tabellenname]
angeben.
Parameter
reference:Object (default = null ) — Der Speicherort der Datenbankdatei, die geöffnet wird. Bei diesem Wert muss es sich um eine „flash.filesystem.File“-Instanz handeln. Lautet der Wert des Parameter null , dann wird eine im Speicher abgelegte Datenbank erstellt und geöffnet.
| |
openMode:String (default = "create ") — Zeigt an, wie die Datenbank geöffnet wird. Bei dem Wert kann es sich um eine beliebige Konstante aus der „SQLMode“-Klasse handeln. Der Standardwert lautet SQLMode.CREATE , womit angegeben wird, dass eine Datenbankdatei erstellt wird, sollte am angegebenen Speicherort keine gefunden werden. Wenn openMode den Wert SQLMode.READ hat und die angegebene Datei nicht existiert, tritt ein Fehler auf. Dieser Parameter wird ignoriert, wenn der Parameter reference den Wert null aufweist.
| |
autoCompact:Boolean (default = false ) — Gibt an, ob unbenutzter Platz in der Datenbank automatisch zurückgewonnen wird. Dieser Parameter ist nur gültig, wenn eine neue Datenbankdatei erstellt wird oder eine Datenbankdatei, in der keine Tabellen erstellt wurden, geöffnet wird. Der durch entfernte Daten eingenommene Platz verbleibt standardmäßig in der Datenbankdatei und wird bei Bedarf wiederverwendet. Wenn Sie diesen Parameter auf true setzen, wird die Datenbank veranlasst, automatisch nicht benutzten Platz zurückzugewinnen. Dies kann sich nachteilig auf die Leistung auswirken, da jedes Mal, wenn Daten in die Datenbank geschrieben werden, zusätzliche Verarbeitungszeit erforderlich ist. Außerdem können die Datenbankdaten im Laufe der Zeit fragmentiert werden. Sie können jederzeit erzwingen, dass die Datenbank nicht verwendeten Speicherplatz in einer Datenbankdatei freigibt, und die Datenbankdatei mit der compact() -Methode defragmentieren.
Dieser Parameter wird ignoriert, wenn der Parameter | |
pageSize:int (default = 1024 ) — Gibt die Seitengröße (in Byte) der Datenbank an. Dieser Parameter ist nur gültig, wenn eine neue Datenbankdatei erstellt wird oder eine Datenbankdatei, in der keine Tabellen erstellt wurden, geöffnet wird. Der Wert muss eine Zweierpotenz größer oder gleich 512 und kleiner oder gleich 32768 sein. Der Standardwert lautet 1024 Byte. Dieser Wert kann nur vor der Erstellung von Tabellen festgelegt werden. Wurden die Tabellen erstellt und wird dann versucht, diesen Wert zu ändern, tritt ein Fehler auf.
| |
encryptionKey:ByteArray (default = null ) — Der Schlüssel für die Verschlüsselung der Datenbankdatei. Wenn durch das Aufrufen von open() eine Datenbank erstellt wird, wird diese mithilfe des festgelegten Schlüssels verschlüsselt. Wenn durch das Aufrufen eine verschlüsselte Datenbank geöffnet wird, muss der Wert dem Schlüssel der Datenbank entsprechen; andernfalls tritt ein Fehler auf. Wenn die zu öffnende Datenbank nicht verschlüsselt ist oder eine unverschlüsselte Datenbank erstellt werden soll, muss der Wert der Standardwert null sein; andernfalls tritt ein Fehler auf.
Ein gültiger Verschlüsselungsschlüssel hat eine Länge von 16 Byte. Eine im Speicher abgelegte Datenbank kann nicht verschlüsselt werden. Deshalb muss dieser Parameter Entspricht beim Öffnen einer verschlüsselten Datenbank der Verschlüsselungsschlüssel nicht jenem der Datenbank, so wird ein SQLError-Ausnahmefehler ausgegeben. In diesem Fall lautet die Der |
Ereignisse
open: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
|
Auslöser
IllegalOperationError — Wenn die „SQLConnection“-Instanz bereits über eine offene Verbindung zu einer Datenbank verfügt (die Eigenschaft connected weist den Wert true auf).
| |
SQLError — Wenn der Vorgang fehlschlägt. Nach einem fehlgeschlagenen Vorgang wird die Verbindung immer geschlossen.
| |
ArgumentError — Wenn es sich bei dem für den Parameter reference angegebenen Wert nicht um eine flash.filesystem.File-Instanz handelt
| |
ArgumentError — Wenn das encryptionKey -Argument nicht null ist und seine length nicht 16 Byte beträgt
| |
ArgumentError — Wenn der reference -Parameter null und das encryptionKey -Argument nicht null ist
| |
ArgumentError — Wenn ein ungültiger pageSize -Parameter angegeben wurde. Dies gilt auch für das Übergeben einer Seitengröße im Modus SQLMode.READ .
|
Verwandte API-Elemente
openAsync | () | Methode |
public function openAsync(reference:Object = null, openMode:String = "create", responder:Responder = null, autoCompact:Boolean = false, pageSize:int = 1024, encryptionKey:ByteArray = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Öffnet eine asynchrone Verbindung zu der Datenbankdatei am angegebenen Speicherort im Dateisystem oder erstellt und öffnet eine neue Datenbankdatei an diesem Speicherort oder öffnet eine Datenbank aus dem Arbeitsspeicher. Wenn die Datenbank mithilfe dieser Methode geöffnet wird, werden das Erstellen und Öffnen der Datenbank sowie andere, mithilfe dieser „SQLConnection“-Instanz ausgeführte Vorgänge asynchron ausgeführt. Dazu gehören auch die Anweisungsausführung und andere Vorgänge, die durch eine dieser „SQLConnection“-Instanz zugewiesene „SQLStatement“-Instanz ausgeführt werden. Um Vorgänge synchron auszuführen, müssen Sie die Datenbankverbindung stattdessen mithilfe der Methode open()
öffnen.
Nachdem die Verbindung zu einer Datenbank hergestellt wurde, verwenden Sie eine SQLStatement-Instanz, um SQL-Befehle auszuführen. Vorgänge auf Datenbankebene wie das Starten oder Beenden von Transaktionen, das Laden von Schemainformationen und andere Vorgänge werden unter Verwendung der SQLConnection-Instanz ausgeführt.
Eine Datenbank, zu der die Verbindung mithilfe der Methode openAsync()
hergestellt wird, erhält automatisch den Datenbanknamen „main“. Mit diesem Namen können Sie Tabellennamen explizit in SQL-Anweisungen qualifizieren, indem Sie sie im Format [datenbankname].[tabellenname]
angeben.
Parameter
reference:Object (default = null ) — Der Speicherort der Datenbankdatei, die geöffnet wird. Bei diesem Wert muss es sich um eine „flash.filesystem.File“-Instanz handeln. Lautet der Wert des Parameter null , dann wird eine im Speicher abgelegte Datenbank erstellt und geöffnet.
| |
openMode:String (default = "create ") — Zeigt an, wie die Datenbank geöffnet wird. Bei dem Wert kann es sich um eine beliebige Konstante aus der „SQLMode“-Klasse handeln. Der Standardwert lautet SQLMode.CREATE , womit angegeben wird, dass eine Datenbankdatei erstellt wird, sollte am angegebenen Speicherort keine gefunden werden. Wenn openMode den Wert SQLMode.READ hat und die angegebene Datei nicht existiert, wird ein Fehlerereigniserror ausgelöst. Dieser Parameter wird ignoriert, wenn der Parameter reference den Wert null aufweist.
| |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn das responder -Argument den Wert null aufweist, wird bei Abschluss der Ausführung ein open - oder error -Ereignis ausgelöst.
| |
autoCompact:Boolean (default = false ) — Gibt an, ob unbenutzter Platz in der Datenbank automatisch zurückgewonnen wird. Dieser Parameter ist nur gültig, wenn eine neue Datenbankdatei erstellt wird oder eine Datenbankdatei, in der keine Tabellen erstellt wurden, geöffnet wird. Der durch entfernte Daten eingenommene Platz verbleibt standardmäßig in der Datenbankdatei und wird bei Bedarf wiederverwendet. Wenn Sie diesen Parameter auf true setzen, wird die Datenbank veranlasst, automatisch nicht benutzten Platz zurückzugewinnen. Dies kann sich nachteilig auf die Leistung auswirken, da jedes Mal, wenn Daten in die Datenbank geschrieben werden, zusätzliche Verarbeitungszeit erforderlich ist. Außerdem können die Datenbankdaten im Laufe der Zeit fragmentiert werden. Mithilfe der Methode compact() zwingen Sie die Datenbank, jederzeit nicht benutzten Platz in einer Datenbank zurückzugewinnen und die Datenbankdatei zu defragmentieren.
Dieser Parameter wird ignoriert, wenn der Parameter | |
pageSize:int (default = 1024 ) — Gibt die Seitengröße (in Byte) der Datenbank an. Dieser Parameter ist nur gültig, wenn eine neue Datenbankdatei erstellt wird oder eine Datenbankdatei, in der keine Tabellen erstellt wurden, geöffnet wird. Der Wert muss eine Zweierpotenz größer oder gleich 512 und kleiner oder gleich 32768 sein. Der Standardwert lautet 1024 Byte. Dieser Wert kann nur vor der Erstellung von Tabellen festgelegt werden. Wurden die Tabellen erstellt und wird dann versucht, diesen Wert zu ändern, tritt ein Fehler auf.
| |
encryptionKey:ByteArray (default = null ) — Der Schlüssel für die Verschlüsselung der Datenbankdatei. Wenn durch das Aufrufen von openAsync() eine Datenbank erstellt wird, wird diese mithilfe des festgelegten Schlüssels verschlüsselt. Wenn durch das Aufrufen eine verschlüsselte Datenbank geöffnet wird, muss der Wert dem Schlüssel der Datenbank entsprechen; andernfalls tritt ein Fehler auf. Wenn die zu öffnende Datenbank nicht verschlüsselt ist, muss der Wert der Standardwert null sein; andernfalls tritt ein Fehler auf.
Ein gültiger Verschlüsselungsschlüssel hat eine Länge von 16 Byte. Eine im Speicher abgelegte Datenbank kann nicht verschlüsselt werden. Deshalb muss dieser Parameter Entspricht beim Öffnen einer verschlüsselten Datenbank der Verschlüsselungsschlüssel nicht jenem der Datenbank, so wird ein SQLErrorEvent-Ausnahmefehler ausgelöst. Die Der |
Ereignisse
open: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird beim Fehlschlagen des Vorgangs ausgelöst. Nach einem fehlgeschlagenen Vorgang wird die Verbindung immer geschlossen.
|
Auslöser
IllegalOperationError — Wenn die „SQLConnection“-Instanz bereits über eine offene Verbindung zu einer Datenbank verfügt (die Eigenschaft connected weist den Wert true auf).
| |
ArgumentError — Wenn es sich bei dem für den Parameter reference angegebenen Wert nicht um eine flash.filesystem.File-Instanz handelt
| |
ArgumentError — Wenn das encryptionKey -Argument nicht null ist und seine length nicht 16 Byte beträgt
| |
ArgumentError — Wenn der reference -Parameter null und das encryptionKey -Argument nicht null ist
| |
ArgumentError — Wenn ein ungültiger pageSize -Parameter angegeben wurde. Dies gilt auch für das Übergeben einer Seitengröße im Modus SQLMode.READ .
|
Verwandte API-Elemente
reencrypt | () | Methode |
public function reencrypt(newEncryptionKey:ByteArray, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.5 |
Ändert den Verschlüsselungsschlüssel einer verschlüsselten Datenbank. Diese Methode wirkt sich nur auf den Verschlüsselungsschlüssel der Hauptdatenbank (jene Datenbank, die mithilfe der open()
- oder openAsync()
-Methode verbunden wurde), aus. reencrypt()
kann nur für Datenbanken aufgerufen werden, die bei der Erstellung verschlüsselt wurden. Wurde eine Datenbank verschlüsselt erstellt, so kann die Verschlüsselung nicht mehr aufgehoben werden. Ebenso kann eine unverschlüsselt erstellte Datenbank später nicht verschlüsselt werden.
Der Vorgang der erneuten Verschlüsselung läuft in einer eigenen Transaktion ab. Wenn der Vorgang der erneuten Verschlüsselung unterbrochen wird, macht die Datenbank die Transaktion rückgängig und der Verschlüsselungsschlüssel bleibt unverändert.
Parameter
newEncryptionKey:ByteArray — Ein ByteArray, das den neuen Verschlüsselungsschlüssel für die Datenbank enthält. Ein gültiger Verschlüsselungsschlüssel hat eine Länge von 16 Byte.
| |
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn das responder -Argument den Wert null aufweist, wird bei Abschluss der Ausführung das Ereignis reencrypt oder error ausgelöst.
|
Ereignisse
reencrypt: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird beim Fehlschlagen des Vorgangs ausgelöst.
|
Auslöser
ArgumentError — Wenn der newEncryptionKey -Wert nicht null ist und seine length nicht 16 Byte beträgt
| |
IllegalOperationError — Wenn die Verbindung nicht geöffnet ist oder eine Transaktion geöffnet ist.
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
releaseSavepoint | () | Methode |
public function releaseSavepoint(name:String = null, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 2 |
Mit dieser Methode werden die SQL-Vorgänge seit dem letzten Speicherpunkt bzw. seit dem angegebenen Speicherpunkt übernommen.
Beachten Sie, dass Änderungen erst dann dauerhaft in der Datenbank gespeichert werden, wenn die gesamte Transaktion übernommen wird. Wenn die Transaktion mit der begin()
-Methode gestartet wurde, müssen Sie die commit()
-Methode aufrufen, um die gesamte Transaktion zu übernehmen. Wenn die Transaktion durch einen Aufruf von setSavepoint()
gestartet wurde, während inTransaction
den Wert false
hat, können Sie die gesamte Transaktion abschließen, indem Sie entweder die commit()
-Methode oder releaseSavepoint()
oder rollbackToSavepoint()
für den ersten Speicherpunkt der Transaktion aufrufen.
Wenn der Code die rollback()
-Methode aufruft, werden alle Änderungen an der Transaktion dauerhaft verworfen. Dies gilt unabhängig davon, ob vor dem Rollback der Transaktion releaseSavepoint()
aufgerufen wurde.
Wenn diese Methode ohne Parameter (oder mit dem Wert null
für den name
-Parameter) aufgerufen wird, werden alle Datenbankänderungen seit dem letzten unbenannten Speicherpunkt übernommen. Dies ist der Speicherpunkt, der als letzter durch einen Aufruf der MethodesetSavepoint()
ohne Festlegung des name
-Parameters erstellt wurde). Wenn die setSavepoint()
-Methode zum Beispiel dreimal aufgerufen wurde, werden drei Speicherpunkte erstellt. Durch einen Aufruf von releaseSavepoint()
zu diesem Zeitpunkt werden die SQL-Vorgänge übernommen, die seit Erstellen des dritten (neuesten) Speicherpunktes ausgeführt wurden.
Wenn für den name
-Parameter ein Wert angegeben wird, übernimmt diese Methode alle SQL-Vorgänge in die Datenbank, die seit dem Speicherpunkt mit dem angegebenen Namen ausgeführt wurden. Wurden nach dem angegebenen Speicherpunkt noch weitere Speicherpunkte erstellt, werden auch die nach diesen Speicherpunkten ausgeführten Vorgänge übernommen.
Nachdem ein Speicherpunkt übernommen oder zurückgenommen wurde, werden dieser Speicherpunkt und ggf. vorhandene neuere Speicherpunkte entfernt. Wenn der Code nach dem Aufruf von releaseSavepoint()
oder rollbackToSavepoint()
weitere SQL-Vorgänge ausführt, gehören diese Vorgänge zu dem neuesten verbleibenden Speicherpunkt. (Anders ausgedrückt, sie gehören zu dem Speicherpunkt, der als letztes vor dem entfernten Speicherpunkt erstellt wurde.) Wenn kein Speicherpunkt verbleibt, gehören die Vorgänge zur Haupttransaktion.
Parameter
name:String (default = null ) — String Der Name des Speicherpunkts, ab dem alle SQL-Vorgänge übernommen werden sollen. Wenn kein Wert angegeben wird oder wenn dieser Parameter null ist (die Standardeinstellung) wird der neueste unbenannte Speicherpunkt (erstellt durch einen Aufruf von setSavepoint() ohne name -Wert) verwendet. Der Wert von name kann kein leerer String ("" ) sein.
| |
responder:Responder (default = null ) — Responder Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das responder-Argument den Wert null aufweist, wird bei Abschluss der Ausführung ein releaseSavepoint - oder error -Ereignis ausgelöst.
|
Ereignisse
releaseSavepoint: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
ArgumentError — wenn der name -Parameterwert ein leerer String ("" ) ist.
| |
IllegalOperationError — Wenn die Methode aufgerufen wird, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft weist den Wert false auf) oder wenn aktuell keine Transaktion offen ist (die inTransaction -Eigenschaft weist den Wert false auf).
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
removeEventListener | () | Methode |
override public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Entfernt einen Listener aus dem EventDispatcher-Objekt. Wenn kein entsprechender Listener mit dem EventDispatcher-Objekt registriert ist, hat ein Aufruf dieser Methode keine Auswirkungen.
Parameter
type:String — Der Ereignistyp.
| |
listener:Function — Das zu entfernende Listener-Objekt.
| |
useCapture:Boolean (default = false ) —
Gibt an, ob der Listener für die Erfassungsphase oder die Ziel- und Bubbling-Phase registriert wurde. Wenn der Listener sowohl für die Aufnahme- als auch für die Bubbling-Phase registriert wurde, sind auch zwei Aufrufe von removeEventListener() erforderlich, um beide zu entfernen: ein Aufruf, bei dem useCapture auf true gesetzt ist, und einer, bei dem useCapture auf false gesetzt ist.
|
rollback | () | Methode |
public function rollback(responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Macht eine vorhandene Transaktion, die mit der Methode begin()
erstellt wurde, rückgängig, d. h. alle in der Transaktion durch SQL-Anweisungen vorgenommen Änderungen werden verworfen.
Innerhalb einer Transaktion können dazwischenliegende Speicherpunkte mit einem Aufruf der setSavepoint()
-Methode erstellt werden. Durch das Verwenden von Speicherpunkten können Sie Teile einer Transaktion übernehmen, indem Sie die releaseSavepoint()
-Methode aufrufen, oder Teile einer Transaktion zurücknehmen, indem Sie rollbackToSavepoint()
aufrufen. Mit einem Aufruf der rollback()
-Methode werden jedoch alle Änderungen in einer Transaktion verworfen, unabhängig davon, ob bereits einzelne Speicherpunkte übernommen wurden, bevor die Transaktion zurückgenommen wird.
Parameter
responder:Responder (default = null ) — Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das Argument responder den Wert null aufweist, wird bei Abschluss der Ausführung ein rollback - oder error -Ereignis ausgelöst.
|
Ereignisse
rollback: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
IllegalOperationError — Wenn die Methode aufgerufen wird, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft weist den Wert false auf) oder wenn aktuell keine Transaktion offen ist (die inTransaction -Eigenschaft weist den Wert false auf).
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
rollbackToSavepoint | () | Methode |
public function rollbackToSavepoint(name:String = null, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 2 |
Nimmt alle SQL-Vorgänge zurück, die seit dem letzten Speicherpunkt bzw. seit dem angegebenen Speicherpunkt ausgeführt wurden.
Beachten Sie, dass bei der Übernahme der gesamten Transaktion durch einen Aufruf der commit()
-Methode alle Änderungen in der Transaktion, die nicht bereits durch einen Aufruf der rollbackToSavepoint()
-Methode zurückgenommen wurden, dauerhaft in der Datenbank gespeichert werden. Durch eine Aufruf der rollback()
-Methode werden alle Änderungen dauerhaft verworfen, unabhängig davon, ob vor dem Rollback der Transaktion einzelne Speicherpunkte übernommen (angewendet) oder zurückgenommen wurden.
Wenn diese Methode ohne Parameter (oder mit dem Wert null
für den name
-Parameter) aufgerufen wird, werden alle Datenbankänderungen seit dem letzten unbenannten Speicherpunkt zurückgenommen. Dies ist der Speicherpunkt, der als letzter durch einen Aufruf der MethodesetSavepoint()
ohne Festlegung des name
-Parameters erstellt wurde).
Wenn für den name
-Parameter ein Wert angegeben wird, nimmt diese Methode alle SQL-Vorgänge zurück, die seit dem Speicherpunkt mit dem angegebenen Namen ausgeführt wurden. Wurden nach dem angegebenen Speicherpunkt noch weitere Speicherpunkte erstellt, werden auch die nach diesen Speicherpunkten ausgeführten Vorgänge zurückgenommen.
Nachdem ein Speicherpunkt übernommen oder zurückgenommen wurde, werden dieser Speicherpunkt und ggf. vorhandene neuere Speicherpunkte entfernt. Wenn der Code nach dem Aufruf von releaseSavepoint()
oder rollbackToSavepoint()
weitere SQL-Vorgänge ausführt, gehören diese Vorgänge zu dem neuesten verbleibenden Speicherpunkt. (Anders ausgedrückt, sie gehören zu dem Speicherpunkt, der als letztes vor dem entfernten Speicherpunkt erstellt wurde.) Wenn kein Speicherpunkt verbleibt, gehören die Vorgänge zur Haupttransaktion.
Parameter
name:String (default = null ) — String Der Name des Speicherpunkts, auf den der Datenbankstatus zurückgesetzt werden soll. Wenn kein Wert angegeben wird oder wenn dieser Parameter null ist (die Standardeinstellung) wird der neueste unbenannte Speicherpunkt (erstellt durch einen Aufruf von setSavepoint() ohne name -Wert) verwendet. Der Wert von name kann kein leerer String ("" ) sein.
| |
responder:Responder (default = null ) — Responder Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das responder-Argument den Wert null aufweist, wird bei Abschluss der Ausführung ein rollbackToSavepoint - oder error -Ereignis ausgelöst.
|
Ereignisse
rollbackToSavepoint: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
ArgumentError — wenn der name -Parameterwert ein leerer String ("" ) ist.
| |
IllegalOperationError — Wenn die Methode aufgerufen wird, während die SQLConnection-Instanz nicht mit einer Datenbank verbunden ist (die connected -Eigenschaft weist den Wert false auf) oder wenn aktuell keine Transaktion offen ist (die inTransaction -Eigenschaft weist den Wert false auf).
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
setSavepoint | () | Methode |
public function setSavepoint(name:String = null, responder:Responder = null):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 2 |
Erstellt einen Speicherpunkt, der eine Art Lesezeichen innerhalb einer Datenbanktransaktion ist. Ein Speicherpunkt stellt einen Punkt innerhalb einer Transaktion dar. Die SQL-Vorgänge, die zwischen Speicherpunkten ausgeführt wurden, können separat von anderen Vorgängen übernommen oder zurückgenommen werden, indem die Methode releaseSavepoint()
oder rollbackToSavepoint()
aufgerufen wird. Mithilfe eines Speicherpunkts können Sie also eine Gruppe von SQL-Vorgängen als verschachtelte Transaktion behandeln.
Wenn die setSavepoint()
-Methode aufgerufen wird und noch keine Transaktion geöffnet wurde (durch einen Aufruf der begin()
-Methode), wird mit dieser Methode eine Transaktion gestartet und ein Speicherpunkt am Anfang der Transaktion erstellt. Wenn bereits eine Transaktion geöffnet ist, wird mit dem Aufruf von setSavepoint()
ein Speicherpunkt in dieser Transaktion erstellt.
Beachten Sie, dass Änderungen erst dann dauerhaft in der Datenbank gespeichert werden, wenn die gesamte Transaktion übernommen wird. Wenn die Transaktion mit der begin()
-Methode gestartet wurde, müssen Sie die commit()
-Methode aufrufen, um die gesamte Transaktion zu übernehmen. Wenn eine Transaktion durch einen Aufruf von setSavepoint()
gestartet wurde, während inTransaction
den Wert false
hat, können Sie die gesamte Transaktion beenden, indem Sie die commit()
-Methode aufrufen. Die Transaktion wird auch automatisch beendet, wenn Sie releaseSavepoint()
oder rollbackToSavepoint()
für den Speicherpunkt, der die Transaktion gestartet hat, aufrufen.
Sie können einen Namen für einen Speicherpunkt festlegen, indem Sie einen Wert für den name
-Parameter angeben. Dies ermöglicht es Ihnen, alle Änderungen, die nach diesem Speicherpunkt vorgenommen wurden, dauerhaft anzuwenden oder zurückzunehmen. Wenn kein Name angegeben wird (Standardeinstellung), wird ein unbenannter Speicherpunkt erstellt.
Nachdem ein Speicherpunkt übernommen oder zurückgenommen wurde, werden dieser Speicherpunkt und ggf. vorhandene neuere Speicherpunkte entfernt. Wenn der Code nach dem Aufruf von releaseSavepoint()
oder rollbackToSavepoint()
weitere SQL-Vorgänge ausführt, gehören diese Vorgänge zu dem neuesten verbleibenden Speicherpunkt. (Anders ausgedrückt, sie gehören zu dem Speicherpunkt, der als letztes vor dem entfernten Speicherpunkt erstellt wurde.) Wenn kein Speicherpunkt verbleibt, gehören die Vorgänge zur Haupttransaktion.
Parameter
name:String (default = null ) — String Der Name des Speicherpunkts. Wenn kein Wert angegeben wird oder wenn dieser Parameter den Wert null hat (der Standardwert), werden mit dem nächsten Aufruf von releaseSavepoint() oder rollbackToSavepoint() ohne Angabe des name -Parameters die seit dem letzten unbenannten Speicherpunkt ausgeführten SQL-Vorgänge übernommen oder zurückgenommen.
Wenn der angegebene Name ein Duplikat eines bereits zuvor gespeicherten Speicherpunkts ist, werden mit dem nächsten Aufruf von Der Wert von | |
responder:Responder (default = null ) — Responder Ein Objekt, das die Methoden angibt, die im Anschluss an einen erfolgreich abgeschlossenen oder fehlgeschlagenen Vorgang aufgerufen werden. Wenn im asynchronen Ausführungsmodus das responder-Argument den Wert null aufweist, wird bei Abschluss der Ausführung ein setSavepoint - oder error -Ereignis ausgelöst.
|
Ereignisse
setSavepoint: — Wird ausgelöst, wenn der Vorgang erfolgreich abgeschlossen wurde.
| |
error: — Wird ausgelöst, wenn der Vorgang im asynchronen Ausführungsmodus fehlschlägt.
|
Auslöser
ArgumentError — wenn der name -Parameterwert ein leerer String ("" ) ist.
| |
IllegalOperationError — Wenn diese Methode aufgerufen wird und die SQLConnection-Instanz an keine Datenbank angeschlossen ist (die Eigenschaft connected hat den Wert false ).
| |
SQLError — Wenn der Vorgang im synchronen Ausführungsmodus fehlschlägt.
|
Verwandte API-Elemente
analyze | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.ANALYZE
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn ein analyze()
-Vorgang erfolgreich ausgeführt wurde.
SQLEvent.ANALYZE
-Konstante definiert den Wert der type
-Eigenschaft eines analyze
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.analyze()
-Methode erfolgreich abgeschlossen wird. Das analyze
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
attach | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.ATTACH
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer attach()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.ATTACH
-Konstante definiert den Wert der type
-Eigenschaft eines attach
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.attach()
-Methode erfolgreich abgeschlossen wird. Das attach
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
begin | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.BEGIN
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer begin()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.BEGIN
-Konstante definiert den Wert der type
-Eigenschaft eines begin
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.begin()
-Methode erfolgreich abgeschlossen wird. Das begin
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
cancel | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.CANCEL
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer cancel()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.CANCEL
-Konstante definiert den Wert der type
-Eigenschaft eines cancel
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.cancel()
-Methode erfolgreich abgeschlossen wird. Das cancel
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection- oder SQLStatement-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
close | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.CLOSE
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer close()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.CLOSE
-Konstante definiert den Wert der type
-Eigenschaft eines close
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.close()
-Methode erfolgreich abgeschlossen wird. Das close
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
commit | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.COMMIT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer commit()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.COMMIT
-Konstante definiert den Wert der type
-Eigenschaft eines commit
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.commit()
-Methode erfolgreich abgeschlossen wird. Das commit
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
compact | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.COMPACT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer compact()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.COMPACT
-Konstante definiert den Wert der type
-Eigenschaft eines compact
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.compact()
-Methode erfolgreich abgeschlossen wird. Das compact
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
deanalyze | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.DEANALYZE
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer deanalyze()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.DEANALYZE
-Konstante definiert den Wert der type
-Eigenschaft eines deanalyze
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.deanalyze()
-Methode erfolgreich abgeschlossen wird. Das deanalyze
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
delete | Ereignis |
flash.events.SQLUpdateEvent
Eigenschaft SQLUpdateEvent.type =
flash.events.SQLUpdateEvent.DELETE
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn sich in einer der verbundenen Datenbanken in einer Tabelle Daten aufgrund eines SQL DELETE
-Befehls ändern. Bei dieser Datenänderung kann es sich um ein direktes Ergebnis der Ausführung einer DELETE
-Anweisung durch eine SQLStatement-Instanz handeln. Es kann sich aber auch um ein indirektes Ergebnis handeln, wenn ein Auslöser auf eine Anweisungsausführung reagiert hat.
SQLUpdateEvent.DELETE
-Konstante definiert den Wert der type
-Eigenschaft eines delete
-SQLConnection-Ereignisses. Das delete
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
rowID | Der eindeutige Zeilenbezeichner der Zeile, die eingefügt, gelöscht oder aktualisiert wurde. |
target | Das SQLConnection-Objekt, für das der Vorgang ausgeführt wurde. |
table | Der Name der Tabelle, in der die Änderung aufgetreten ist. |
Verwandte API-Elemente
detach | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.DETACH
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer detach()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.DETACH
-Konstante definiert den Wert der type
-Eigenschaft eines detach
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.detach()
-Methode erfolgreich abgeschlossen wird.
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
error | Ereignis |
flash.events.SQLErrorEvent
Eigenschaft SQLErrorEvent.type =
flash.events.SQLErrorEvent.ERROR
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn ein asynchroner Vorgang des „SQLConnection“-Objekts einen Fehler ergibt. Die als Ereignisobjekt ausgelöste „SQLErrorEvent“-Instanz verfügt über eine error
-Eigenschaft und darin sind Informationen zu dem versuchten Vorgang und dem Grund für das Fehlschlagen enthalten.
SQLErrorEvent.ERROR
-Konstante definiert den Wert der type
-Eigenschaft eines error-Ereignisses, das ausgelöst wird, wenn ein Aufruf einer Methode einer SQLConnection-Instanz oder einer SQLStatement-Instanz mit einem Fehler beendet wird. Das error
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
error | Ein SQLError-Objekt, das Informationen über den aufgetretenen Fehlertyp und den Vorgang, der den Fehler ausgelöst hat, enthält. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection- oder SQLStatement-Objekt, dessen Fehlerstatus gemeldet wird. |
insert | Ereignis |
flash.events.SQLUpdateEvent
Eigenschaft SQLUpdateEvent.type =
flash.events.SQLUpdateEvent.INSERT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn sich in einer der verbundenen Datenbanken in einer Tabelle Daten aufgrund eines SQL INSERT
-Befehls ändern. Bei dieser Datenänderung kann es sich um ein direktes Ergebnis der Ausführung einer INSERT
-Anweisung durch eine SQLStatement-Instanz handeln, oder ein indirektes Ergebnis, wenn ein Auslöser auf eine Anweisungsausführung reagiert hat.
SQLUpdateEvent.INSERT
-Konstante definiert den Wert der type
-Eigenschaft eines insert
-SQLConnection-Ereignisses. Das insert
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
rowID | Der eindeutige Zeilenbezeichner der Zeile, die eingefügt, gelöscht oder aktualisiert wurde. |
target | Das SQLConnection-Objekt, für das der Vorgang ausgeführt wurde. |
table | Der Name der Tabelle, in der die Änderung aufgetreten ist. |
Verwandte API-Elemente
open | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.OPEN
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer openAsync()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.OPEN
-Konstante definiert den Wert der type
-Eigenschaft eines open
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.detach()
- oder SQLConnection.openAsync()
Methode erfolgreich abgeschlossen wird. Das open
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
reencrypt | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.REENCRYPT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.5 |
Wird ausgelöst, wenn der Vorgang einer reencrypt()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.REENCRYPT
-Konstante definiert den Wert der type
-Eigenschaft eines reencrypt
-Ereignisobjekts. Dieser Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.reencrypt()
-Methode erfolgreich abgeschlossen wird. Das reencrypt
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
releaseSavepoint | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.RELEASE_SAVEPOINT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 2 |
Wird abgesetzt, wenn der Vorgang einer releaseSavepoint()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.RELEASE_SAVEPOINT
-Konstante definiert den Wert der type
-Eigenschaft eines releaseSavepoint
-Ereignisobjekts. Dieser Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.releaseSavepoint()
-Methode erfolgreich abgeschlossen wird. Das releaseSavepoint
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
rollback | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.ROLLBACK
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer rollback()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.ROLLBACK
-Konstante definiert den Wert der type
-Eigenschaft eines rollback
-Ereignisobjekts. Der Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.rollback()
-Methode erfolgreich abgeschlossen wird. Das rollback
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
rollbackToSavepoint | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.ROLLBACK_TO_SAVEPOINT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 2 |
Wird abgesetzt, wenn der Vorgang einer rollbackToSavepoint()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.ROLLBACK_TO_SAVEPOINT
-Konstante definiert den Wert der type
-Eigenschaft eines rollbackToSavepoint
-Ereignisobjekts. Dieser Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.rollbackToSavepoint()
-Methode erfolgreich abgeschlossen wird. Das rollbackToSavepoint
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
schema | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.SCHEMA
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn der Vorgang einer loadSchema()
-Methode erfolgreich ausgeführt wurde und die Schemaergebnisse bereit sind.
SQLEvent.SCHEMA
-Konstante definiert den Wert der type
-Eigenschaft eines schema
-Ereignisobjekts. Wird ausgelöst, wenn die SQLConnection.loadSchema()
-Methode erfolgreich abgeschlossen wurde. Nachdem das SQLEvent.SCHEMA
-Ereignis ausgelöst wurde, können mit der SQLConnection.getSchemaResult()
-Methode die Schemainformationen abgerufen werden. Das schema
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
setSavepoint | Ereignis |
flash.events.SQLEvent
Eigenschaft SQLEvent.type =
flash.events.SQLEvent.SET_SAVEPOINT
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 2 |
Wird abgesetzt, wenn der Vorgang einer setSavepoint()
-Methode erfolgreich ausgeführt wurde.
SQLEvent.SET_SAVEPOINT
-Konstante definiert den Wert der type
-Eigenschaft eines setSavepoint
-Ereignisobjekts. Dieser Ereignistyp wird ausgelöst, wenn ein Aufruf der SQLConnection.setSavepoint()
-Methode erfolgreich abgeschlossen wird. Das setSavepoint
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
target | Das SQLConnection-Objekt, das den Vorgang ausgeführt hat. |
Verwandte API-Elemente
update | Ereignis |
flash.events.SQLUpdateEvent
Eigenschaft SQLUpdateEvent.type =
flash.events.SQLUpdateEvent.UPDATE
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0 |
Wird ausgelöst, wenn sich in einer der verbundenen Datenbanken in einer Tabelle Daten aufgrund eines SQL UPDATE
-Befehls ändern. Bei dieser Datenänderung kann es sich um ein direktes Ergebnis der Ausführung einer UPDATE
-Anweisung durch eine SQLStatement-Instanz handeln. Es kann sich aber auch um ein indirektes Ergebnis handeln, wenn ein Auslöser auf eine Anweisungsausführung reagiert hat.
SQLUpdateEvent.UPDATE
-Konstante definiert den Wert der type
-Eigenschaft eines update
-SQLConnection-Ereignisses.
Das update
-Ereignis hat folgende Eigenschaften:
Eigenschaft | Wert |
---|---|
bubbles | false |
cancelable | false . Es gibt kein Standardverhalten, das abgebrochen werden kann. |
currentTarget | Das Objekt, welches das Ereignisobjekt aktiv mit einem Ereignis-Listener verarbeitet. |
rowID | Der eindeutige Zeilenbezeichner der Zeile, die eingefügt, gelöscht oder aktualisiert wurde. |
target | Das SQLConnection-Objekt, für das der Vorgang ausgeführt wurde. |
table | Der Name der Tabelle, in der die Änderung aufgetreten ist. |
Verwandte API-Elemente
Tue Jun 12 2018, 10:04 AM Z