Oracle10g Lite, scratching the surface
Over the last few days I scanned trough documentation about Oracle10g (Oracle 9i) Lite the get a overview of the possibilities. Furthermore I tried to install the product on a single machine and follow the included tutorials. Unfortunately I did not succeed to get a working environment. The underlying Oracle Lite database however was up and running. One can access the Oracle Lite dababase trough the Mobile SQL (MSQL) interface. MSQL is an interactive tool that allows you to create, access, and manipulate the Oracle Lite database on for instance a laptop or a handheld device. Using MSQL, you can do the following: Create database objects such as tables, views and execute SQL statements. As a true Oracle product the Scott/Tiger schema (emp/dept) was installed. To see witch SQL statement are accepted I tried the scripts available in the 7UP workshop. Frequent used features as sysdate, upper, substr etc. can be used. But also the CASE statement and in-line views are possible. As expected it is not possible to create triggers on tables, procedures or to use stuff like tree walk queries, multi-record subqueries. More information can be found in the Sql reference in the supplied documentation.
The key issue of using Oracle lite is of course the interaction between the central database and the detached Oracle Lite databases. This is process is called Synchronization and includes tree components shown in the figure below.
The most common method of synchronization is a fast refresh, where changes are uploaded by the client, and changes for the client are downloaded. The other method of synchronization is the complete refresh. Since I was not able to actually see this process working I refer to the supplied documentation for detail information. The basic principle is that a query result is compared with a dataset. According to parameters the difference between the two results is processed. It looks promising and I hope to see it working someday.