Använda synkrona och asynkrona databasåtgärder

Adobe AIR 1.0 och senare

I tidigare avsnitt beskrevs vanliga databasåtgärder, till exempel hur du hämtar, infogar, uppdaterar och tar bort data samt hur du skapar en databasfil, tabeller och andra objekt i en databas. I exemplen visades hur du utför dessa åtgärder både asynkront och synkront.

I asynkront körningsläge instruerar du, som nämnts, databasmotorn att utföra en åtgärd. Databasmotorn arbetar sedan i bakgrunden medan programmet fortsätter att köras som vanligt. När åtgärden har slutförts skickar databasmotorn en händelse för att göra dig uppmärksam på detta. Den huvudsakliga fördelen med asynkron körning är att databasåtgärderna utförs i bakgrunden medan huvudprogramkoden fortsätter att köras som vanligt. Detta är särskilt värdefullt när en åtgärd tar lång tid att utföra.

I synkront körningsläge körs åtgärderna däremot inte i bakgrunden. Du anger att databasmotorn ska utföra en åtgärd. Sedan pausas koden medan databasmotorn fortfarande utför sitt arbete. När åtgärden har slutförts fortsätter körningen med nästa rad i din kod.

Du kan inte köra vissa åtgärder eller satser synkront och andra asynkront med en enda databasanslutning. Du anger om en SQLConnection -instans ska arbeta i synkront eller asynkront körningsläge när du öppnar anslutningen till databasen. Om du anropar SQLConnection.open() arbetar anslutningen i synkront körningsläge, och om du anropar SQLConnection.openAsync() arbetar anslutningen i asynkront körningsläge. När en SQLConnection-instans har anslutits till en databas via open() eller openAsync() är den kopplad till synkront eller asynkront körningsläge.