Korzystanie z synchronicznych i asynchronicznych operacji bazy danych

Adobe AIR 1.0 i starsze wersje

W poprzedniej sekcji opisano typowe operacje bazy danych, takie jak pobieranie, wstawianie, aktualizowanie i usuwanie danych, a także tworzenie pliku bazy danych oraz tabel i innych obiektów w bazie danych. W przykładach przedstawiono sposób wykonywania tych operacji w sposób asynchroniczny i synchroniczny.

Przypomnijmy, że w trybie wykonywania asynchronicznego należy określić instrukcję dla mechanizmu bazy danych, który wykona operację. Następnie mechanizm bazy danych będzie działał w tle przez czas działania aplikacji. Po zakończeniu operacji mechanizm bazy danych wywoła zdarzenie, które poinformuje o tym fakcie. Najważniejszą zaletą wykonywania asynchronicznego jest to, że środowisko wykonawcze wykonuje operacje bazy danych w tle, podczas gdy wykonywany jest kod aplikacji. Jest to szczególnie istotne wówczas, gdy aplikacja działa przez znaczny czas.

Z drugiej strony: w trybie wykonywania synchronicznego operacje nie działają w tle. Użytkownik zleca mechanizmowi bazy danych wykonanie operacji. Kod jest wstrzymywany na czas działania mechanizmu bazy danych. Gdy operacja zostanie zakończona, następuje wznowienie wykonywania kodu od kolejnej linii.

W przypadku korzystania z pojedynczego połączenia z bazą danych nie ma możliwości wykonywania jednych operacji w sposób synchroniczny, a innych w sposób asynchroniczny. Po otwarciu połączenia z bazą danych należy określić, czy klasa SQLConnection działa w trybie synchronicznym lub asynchronicznym. Jeśli zostanie wywołana metoda SQLConnection.open() , połączenie działa w trybie wykonywania synchronicznego, a jeśli zostanie wywołana metoda SQLConnection.openAsync() , wówczas połączenie działa w trybie wykonywania asynchronicznego. Gdy instancja SQLConnection zostanie połączona z bazą danych za pomocą metody open() lub openAsync() , zostaje przypisana do trybu wykonywania synchronicznego lub asynchronicznego.