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:
Pobieranie danych z bazy danych
Wstawianie danych
Zmienianie i usuwanie danych