Praca z instrukcjami SQLAdobe AIR 1.0 i wersje późniejsze Pojedyncza instrukcja SQL (zapytanie lub polecenie) jest reprezentowana w środowisku wykonawczym jako obiekt SQLStatement. W celu utworzenia i wykonania instrukcji SQL należy wykonać poniższe czynności: Utwórz instancję SQLStatement.Obiekt SQLStatement reprezentuje instrukcję SQL w aplikacji. var selectData:SQLStatement = new SQLStatement(); Określ bazę danych, której będzie dotyczyło zapytanie.W tym celu ustaw właściwość sqlConnection obiektu SQLStatement na wystąpienie klasy SQLConnection, które jest połączone z żądaną bazą danych. // A SQLConnection named "conn" has been created previously selectData.sqlConnection = conn; Określ rzeczywistą instrukcję SQL.Utwórz tekst instrukcji w postaci ciągu znaków, a następnie przypisz tekst do właściwości text instancji SQLStatement. selectData.text = "SELECT col1, col2 FROM my_table WHERE col1 = :param1"; Zdefiniuj funkcje w celu obsłużenia wyniku wykonanej operacji (tylko tryb wykonywania asynchronicznego).Użyj metody addEventListener() w celu zarejestrowania funkcji jako detektorów zdarzeń result i error instancji SQLStatement. // 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
}
Możliwe jest również określenie metod detektorów za pomocą obiektu Responder. W takim przypadku należy utworzyć instancję Responder, a następnie powiązać z nią metody detektora. // 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
}
Jeśli tekst instrukcji zawiera definicje, przypisz wartości do tych parametrów.W celu przypisania wartości parametru użyj właściwości parameters instancji SQLStatement — ta właściwość jest tablicą asocjacyjną. selectData.parameters[":param1"] = 25; Wykonaj instrukcję SQL.Wywołaj metodę execute() instancji SQLStatement. // using synchronous execution mode // or listener methods in asynchronous execution mode selectData.execute(); Ponadto: jeśli obiekt Responder jest używany zamiast detektorów zdarzeń w trybie wykonania asynchronicznego, wówczas należy przekazać instancję Responder do metody execute(). // using a Responder in asynchronous execution mode selectData.execute(-1, selectResponder); Przykłady prezentujące poszczególne kroki zawierają następujące tematy: |
|