SQLQueue: Chaining Asynchronous SQL statements using the AIR database access API
The AIR database access API is asynchronous. This works well for executing expensive queries without blocking the user interface. However, sometimes you may need to run a series of short and interdependent statements, and in that case, executing each statement asynchronously and independently can make your code difficult to manage.
Consider an example where you have an array of contact objects that you need to persist to your local database (this might be part of a data synchronization process). Your Flex code might look like this:
AIR-to-Desktop Drag-and-Drop: Two Simple Utility Classes
One of the exciting features of AIR is that it enables drag-and-drop between your Flex applications and the desktop: For example, you could drag a chart from your Flex application and drop it on your desktop as a JPG, or directly inside a Word document. Similarly, you could grab some rows from a Datagrid and drop them on your desktop as an XLS file, or directly inside an Excel spreadsheet.
I spend a lot of time talking with Financial Services organizations, and this is a feature that they are really interested in.
This is “native” drag-and-drop handled by the operating system. The way it works is that, on “drag start” in your application, you are responsible for packaging the relevant data in one or different formats (text, bitmap, file). When the user mouses over another desktop application, that application will look at the formats available, and decide if it wants to accept a drop. If it does, it will adjust the drag icon accordingly and consume the data as appropriate if the user releases the mouse button.
SalesBuilder on AIR: Local Database, Data Sync, and Native Drag-and-Drop
NOTE: This version of the application is now obsolete. I posted a new and significantly improved version here.
SalesBuilder is a sample Sales Force Automation application that allows you to work offline (using the SQLite database embedded in the AIR runtime), and synchronize data with the server when you are back online.
In addition to using a local database, SalesBuilder also demonstrates other interesting features such as native drag-and-drop between an AIR application and the desktop, as well as native drag-and-drop between an AIR application and other desktop applications such as Word and Excel.
This is the AIR version of the browser-based application I recently posted here. The database-related instructions below are therefore very similar.
SQLite Admin Application for AIR
UPDATE: This version is now obsolete. A new version is available here.

I put together this SQL Admin application to help me manipulate my SQLite databases when working with AIR.
The application is based on the SQL Admin for Google Gears I posted recently.
This is an early version and is not fully functional. For example, because in this beta of AIR we don’t expose system tables, I cannot display a list of all tables in the database (In SQLite, this is normally done using SELECT * FROM SQLITE_MASTER). However, you can use the application to create a new database or open an existing one, and execute any type of SQL statement: You can create, alter and drop tables, select, insert, update, delete data, etc…
Flex and Google Gears: sales force automation application with offline capabilities
As a follow up to my previous post, here is the sample Sales Force Automation application I built to demonstrate the Flex/Google Gears integration, and that Kevin Lynch demonstrated during the Google Developer Day keynote last week in San Jose.
SalesBuilder uses the Google Gears Database API to save data to an embedded SQLite database, and the LocalServer API to enable offline access to the application.