In most cases, the memory, CPU, and storage required by most mobile devices and embedded systems impose stricter limits that typically make UltraLite the preferred database option.
To compare UltraLite limitations with SQL Anywhere limitations, see SQL Anywhere size and number limitations.
Statistic | Maximum for UltraLite |
---|---|
Number of connections per database | Up to 14 for single threaded applications. |
Number of concurrent open connections |
Up to 8 for Palm OS. Up to 32 for all other OS. |
Total number of concurrent connections per application |
Up to 16 on Palm OS. Up to 64 for all other OS. |
SQL communication areas | Up to 63. |
File-based persistent store (database size) | 2 GB file or OS limit on file size. |
Palm Computing Platform database size |
128 MB (primary storage). 2 GB (expansion card file system). |
Rows per table | Up to 16 million.1 |
Rows per database | Limited by persistent store. |
Table size | Limited only by database size. |
Tables per database | Limited only by database size. |
Columns per table | Row size is limited by page size, so the practical limit on the number of columns per table is derived from this size. Typically, this practical limit is much less than 4000. |
Indexes per table | Limited only by database size. |
Tables referenced per transaction | No limit. |
Stored procedure length | Not applicable. |
Stored procedures per database | Not applicable. |
Triggers per database | Not applicable. |
Nesting | Not applicable. |
Number of publications | 32 publications. |
Page size | 16 KB. |
Row size |
The length of each packed row must not exceed the page size. See Row packing and table definitions. Character strings are stored without padding when they are shorter than the column size. This restriction excludes columns declared as long binary and long varchar as these are stored separately. |
Long binary/long varchar size | Limited only by database size. |
1 In some cases, changes to the row (deletes and updates) and other state information are maintained along with the row data. This information allows those changes to be synchronized. Consequently, the actual row limit can be smaller than 16 million, depending on the number of transactions on a table between synchronization, or whether the table is synchronized at all. See UltraLite transaction processing.
Send feedback about this page via email or DocCommentXchange | Copyright © 2008, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.0 |