UltraLite User's Guide
Introduction to UltraLite
UltraLite is a deployment technology for Adaptive Server Anywhere databases, aimed at small, mobile, and embedded devices. Supported target platforms include Windows CE, Palm OS, and Java devices.
UltraLite provides the following benefits for users of small devices:
The functionality and reliability of a transaction-processing SQL database.
The ability to synchronize data with your central database-management system.
An extremely small memory footprint.
C/C++ or Java development.
UltraLite allows applications on small devices to use full-featured SQL to accomplish data storage, retrieval, and manipulation. UltraLite supports referential integrity, transaction processing, and multi-table joins of all varieties. In fact, UltraLite supports most of the same data types, runtime functions, and SQL data manipulation features as Sybase Adaptive Server Anywhere.
UltraLite uses MobiLink synchronization technology to synchronize with industry-standard database-management systems. MobiLink synchronization works with ODBC-compliant data sources such as Sybase Adaptive Server Anywhere, Sybase Adaptive Server Enterprise, IBM DB2, Microsoft SQL Server, and Oracle.
UltraLite provides an ultra-small footprint by generating a custom database engine for your application. This custom engine includes only the features required by your application.
Each UltraLite application has its own database, modeled after a reference Adaptive Server Anywhere database.
C/C++ UltraLite custom database engines for your application can be as small as 50 kb, depending on your deployment platform and the number of SQL statements in the application and the SQL features used.
In-memory database UltraLite target devices may have no hard disk and tend to have relatively slow processors. The UltraLite runtime employs algorithms and data structures that provide high performance and low memory use.
You can develop UltraLite applications in the following ways:
C/C++ using the UltraLite C++ API The C++ interface exposes tables and SQL statements as objects, with methods to move through the rows of the table or a result set and to execute statements.
C/C++ using embedded SQL Embedded SQL is an easy way of including SQL statements directly in C or C++ source code.
Java using JDBC UltraLite Java applications support standard JDBC data access methods.