UltraLite Database User's Guide
Welcome to UltraLite
Introduction
UltraLite databases are transaction-processing relational databases, and provide you with the following features:
Tables A single UltraLite database can hold many tables. The number and type of columns in a relational database table is fixed at design time, but each table can have any number of rows (up to 64 K). Each row has a single entry for each column. The special NULL entry is used when there is no value for the entry.
When designing your database, each table should represent a separate type of item, such as Customers, Employees, and so on.
Data types UltraLite databases can manage a full range of data types, as well as default values and NULL values.
Indexes The rows in a relational database table are not ordered. You can create indexes to access the rows in order and to provide fast access to data. Indexes are commonly associated with a single column, but UltraLite also provides multi-column indexes.
Keys Each table has a special index called the primary key. Entries in the primary key column or columns must be unique.
Foreign keys relate the data in one table to that in another. Each entry in the foreign key column must correspond to an entry in the primary key of another table.
Between them, primary keys and foreign keys ensure that the database has referential integrity. Referential integrity is enforced in UltraLite databases, so that you cannot, for example, enter an order for a customer unless that customer exists in the database.
By enforcing referential integrity, UltraLite ensures that the data in your UltraLite database is correct, in the same manner that data elsewhere in the enterprise is correct.
Publications If you wish to synchronize the data in your UltraLite database with other databases you must have a valid SQL Anywhere Studio license. SQL Anywhere Studio includes MobiLink synchronization technology to synchronize UltraLite databases with desktop, workgroup or enterprise databases.
Publications define sets of data to be synchronized. It is often desirable to synchronize all the data in an UltraLite database, but publications provide extra flexibility and control. They allow you to perform priority synchronizations, which means you can specify that only certain tables or groups of tables should be synchronized.
Transactions and recovery UltraLite has commit and rollback features, together with automatic recovery in the event of device failure, to guarantee that transactions are executed completely or not at all.
Security UltraLite provides user authentication and database encryption, as well as encryption on the device and during synchronization, to build secure applications.
Performance and small footprint UltraLite target devices tend to have relatively slow processors. UltraLite employs algorithms and data structures that provide high performance and low memory use. For example, UltraLite provides a caching algorithm designed specifically for small devices.
Multi-threaded applications You can develop multi-threaded UltraLite applications on those platforms that support it (Windows and Windows CE).
For more information about UltraLite databases, see UltraLite Databases.