The answer to your question about "large scale" is yes, AIR + SQLite can handle large datasets but with some caveats.
I have a SQLite database that is several hundred megabytes. The main tables contain 4 million rows, 275000 rows, and 3500 rows. Queries that join these tables, when the query makes use of indexes, execute in under 100 milliseconds. Snappy. However, some things in the AIR implementation of SQLite are causing index optimizations with the LIKE() operator not to work, both in regular statements and in prepared statements. I am not sure what these things are because the differences between the AIR implementation of SQLite and SQLite proper haven't been documented. They could be things like overloading certain core SQLite functions, or compiling statements/prepared statements with one of the functions that cause the optimizer not to use an index. As a result of these mysterious things, if you run a query like SELECT * from MEMBERSHIP where MEMBER_LASTNAME LIKE 'Johns%' the query will do a full table scan. Do a more complex column value starts-with query that involves joins, and the table scan can translate to very poor performance. For example, when I execute my query at the SQLITE3.EXE command-line, where the index IS used, the query executes in under 100ms but the identical query takes 45-50 seconds in AIR. Also, to keep the front-end responsive when working with large datasets, you will have to use asynchronous data connections not synchronous connections. The coding is somewhat more complicated but also I found the AIR debugger to be less than robust when working with asynchronous connections and data events. However, everything worked OK with Responders, so I'd recommend the use of responder objects over the event-dispatch architecture. I have no experience to offer you with concurrency issues and SQLite. My AIR + local-db application is single-user. Regards TR jwc_wensan wrote: > > In all the articles I have read and some examples, it only talks about using SQLite as the database on the users' PC/Mac. Is that the only database that can be used locally? > > Can that database handle a large-scale commercial AIR app with tens of > thousands of records? >Also, since the AIR app is installed on the users PC/Mac, is there any reason >to use mx:Modules? > > If the user needs/requires that data remain local, is AIR the best solution? > > Does Flex 4 solve any issues? > > Thoughts, options, suggestions? > > Thanks in advance, > > Jack

