Arbeta med SQL-satser

Adobe AIR 1.0 och senare

En enskild SQL-sats (en fråga eller ett kommando) representeras i körningen av ett SQLStatement-objekt. Så här skapar och kör du en SQL-sats:

Skapa en SQLStatement-instans.

SQLStatement-objektet representerar SQL-satsen i programmet.

var selectData:SQLStatement = new SQLStatement(); 

Ange vilken databas frågan ska köras mot.

Det gör du genom att ange SQLStatement-objektets sqlConnection-egenskap till SQLConnection-instansen som är ansluten till den önskade databasen.

// A SQLConnection named "conn" has been created previously 
selectData.sqlConnection = conn;

Ange den faktiska SQL-satsen.

Skapa satstexten som en sträng och tilldela den till SQLStatement-instansens text-egenskap.

selectData.text = "SELECT col1, col2 FROM my_table WHERE col1 = :param1";

Definiera funktioner för att hantera resultatet av den åtgärd som har körts (endast asynkront körningsläge).

Använd metoden addEventListener() om du vill aktivera funktioner, till exempel avlyssnare för SQLStatement-instansens result- och error-händelser.

// using listener methods and addEventListener() 
     
selectData.addEventListener(SQLEvent.RESULT, resultHandler); 
selectData.addEventListener(SQLErrorEvent.ERROR, errorHandler); 
     
function resultHandler(event:SQLEvent):void 
{ 
    // do something after the statement execution succeeds 
} 
     
function errorHandler(event:SQLErrorEvent):void 
{ 
    // do something after the statement execution fails 
} 

Alternativt kan du ange lyssnarmetoder med hjälp av ett Responder-objekt. I så fall skapar du en Responder-instans och länkar lyssnarmetoderna till den.

// using a Responder (flash.net.Responder) 
     
var selectResponder = new Responder(onResult, onError); 
     
function onResult(result:SQLResult):void 
{ 
    // do something after the statement execution succeeds 
} 
     
function onError(error:SQLError):void 
{ 
    // do something after the statement execution fails 
} 

Om satstexten innehåller parameterdefinitioner tilldelar du värden för dessa parametrar.

Om du vill tilldela parametervärden använder du SQLStatement-instansens associativa array-egenskap parameters.

selectData.parameters[":param1"] = 25;

Kör SQL-satsen.

Anropa SQLStatement-instansens execute()-metod.

// using synchronous execution mode 
// or listener methods in asynchronous execution mode 
selectData.execute();

Om du använder en Responder i stället för händelselyssnare i asynkront körningsläge, skickar du Responder-instansen till execute()-metoden.

// using a Responder in asynchronous execution mode 
selectData.execute(-1, selectResponder);

Specifika exempel som demonstrerar dessa steg finns i följande avsnitt:

Hämta data från en databas