SQL Anywhere size and number limitations

The following table lists the physical limitations on size and number of objects in a SQL Anywhere database. The memory, CPU, and disk drive of the computer are more limiting factors in most cases.

Item Limitation
Database size 13 files per database. For each file, the largest file allowed by operating system and file system
Dbspace size 228 x page size
Temporary file size 228 x page size
Field size 2 GB
File size (FAT 12) 16 MB
File size (FAT 16) 2 GB
File size (FAT 32) 4 GB
File size for NTFS, HP-UX 11.0 and later, Solaris 2.6 and later, Linux 2.4 and later)
  • 512 GB for 2 KB pages
  • 1 TB for 4 KB pages
  • 2 TB for 8 KB pages
File size (all other platforms and file systems) 2 GB
Maximum cache size (non-AWE cache) (Windows 2000 Professional, Windows 2000 Server, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 Web Edition, Windows Server 2003 Standard Edition) 1.8 GB
Maximum cache size (non-AWE cache) (Windows 2000 Advanced Server, Windows 2000 Enterprise Server, Windows 2000 Datacenter Server, Windows Server 2003 Enterprise Edition, Windows Server 2003 Datacenter Edition, Windows Vista Ultimate, Windows Vista Enterprise, Windows Vista Business, Windows Vista Home Premium, Windows Vista Home Basic) 2.7 GB
Maximum cache size (AWE cache) (Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server, Windows 2000 Datacenter Server, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 Web Edition, Windows Server 2003 Standard Edition, Windows Server 2003 Enterprise Edition, Windows Server 2003 Datacenter Edition ) 100% of all available memory - 128 MB
Maximum cache size (Windows Mobile) Limited by available memory on the device
Maximum cache size (Unix—Solaris, x86 Linux, AIX, HP) 2 GB for 32-bit servers
Maximum cache size (Win 64) Limited by physical memory on 64-bit servers
Maximum cache size (Itanium HP-UX) Limited by physical memory on 64-bit servers
Maximum index entry size No limit
Number of databases per server 255
Number of columns per table

45000

Note: An excessive number of columns, although allowed, can affect performance.

Number of nullable constants per table min( 45000, ( page size - overhead ) * 8 )
Number of columns in a procedure result set 45000
Number of columns in a SELECT list 100000
Number of columns in a GROUP BY list 100000
Number of columns in a GROUP BY with grouping sets 64
Number of columns in a CUBE 15
Number of distinct grouping sets 32768
Length of DEFAULT for a column 32768
Length of COMPUTE for a column 32768
Length of DEFAULT for procedure parameters 32768
Length of DEFAULT for a user-defined domain 32768
Length of check constraints 2 GB
Number of indexes per table 232
Number of rows per database 4096 x 228 x 13
Number of rows per table 4096 x 228
Number of tables per database 232 - 220 - 1 = 4293918719
Number of temporary tables per connection 220 = 1048576
Number of tables referenced per transaction No limit
Number of stored procedures per database 232 - 1 = 4294967295
Number of concurrent statements per database server 20 x number-of-database-connections + 65534
Number of events per database 231 - 1 = 2147483647
Number of triggers per database 232 - 1 = 4294967295
Row size Limited by file size
Table size Maximum file size. User-created indexes for the table can be stored separately from the table
Strings 2 GB
Binary data types 2 GB
Identifiers (including user IDs, table names, and column names) 128 bytes
Passwords 255 bytes
Database server names

250 bytes (TCP/IP and shared memory

See -n server option and ServerName connection parameter [ENG].

Database names

250 bytes

See -n database option.