Before using existing applications with this version of the software, be sure to review the list of behavior changes to determine whether your application is affected. See SQL Anywhere® 10 - Changes and Upgrading.
Adaptive Server Anywhere has been renamed SQL Anywhere. In this chapter, SQL Anywhere is used to refer to all versions.
If you are upgrading from version 10.0.0, you can either use the Upgrade utility or rebuild your database. See Upgrading version 10.0.0 databases, and Rebuilding version 10.0.0 databases.
Databases with materialized views
It is recommended that you refresh the materialized views in your database after upgrading your database server, or after rebuilding or upgrading your database to work with an upgraded database server. See Refreshing materialized views.
If you are upgrading to SQL Anywhere version 10.0.1 from version 9 or earlier, you must rebuild the database, which consists of unloading the old database, and reloading it into a new version 10 database. Attempting to load version 9 or earlier databases results in an error on database startup. There are three approaches for rebuilding existing databases:
Use the version 10.0.0 Unload utility (dbunload) with the -an (create a new database) or -ar (replace the old database) option. See Rebuilding a version 9 or earlier database using the Unload utility.
The Unload utility (dbunload) has the same file name in all versions of SQL Anywhere. You must make sure you are using the correct version. See Using the utilities.
Use the Unload Database wizard in Sybase Central. You can choose to create a new database, replace an existing database with the new database, or unload the database to a file. See Rebuilding a version 9 or earlier database from Sybase Central.
Unload the database using an older version of dbunload, and then reload the database using the reload.sql file and the version 10.0.0 database server. If you need to make schema changes, this is the recommended way of upgrading. After you make the schema changes, you can initialize a new database, and then apply the rebuild script to it.
Rebuilding Mac OS X databases
You must use SQL Anywhere 9.0.2 or earlier software to unload a version 9.0.2 or earlier database on Mac OS X. If you want to unload a Mac OS X database using SQL Anywhere 10 software, you must unload the database on a different platform. The reload can be performed on Mac OS X using the version 10 software.
If you want to change the characteristics of the database during unload and reload (for example, change a case-sensitive database to a case-insensitive database), the procedure is more involved. For more information, see Rebuilding databases.
SQL Anywhere 10 database servers support connections from client applications using software from version 6.0.0 or later. Version 5 and earlier clients cannot connect to a version 10 database server. When version 9 and earlier clients connect to a version 10 database server, they cannot use the following features:
The embedded SQL NCHAR type
Improved support of Unicode data from ODBC, OLE DB, and ADO.NET (for example, describing NCHAR as WCHAR columns)
BLOB performance enhancements for Unicode applications using ODBC, and all applications using OLE DB and ADO.NET
Enhancements that primarily improve WAN performance, but that also provide some improvements to LAN performance
Setting SATMP for shared memory connections
A different search order is used to locate the temporary file in version 9 and earlier than is used in version 10. If you are connecting a version 9 or earlier client to a version 10 database server over shared memory, you must set the SATMP (version 10) and ASTMP (version 9 and earlier) environment variables to specify the location of the temporary file. If you do not set these environment variables, the shared memory connection attempt will fail.
Management of old databases and old database servers from the current version of Sybase Central is provided as follows:
You can connect to and administer version 8 and later databases running on version 8 and later servers.
You can connect to a version 5, 6, 7, 8, or 9 database on a version 8 or later database server to rebuild the database using the Unload Database wizard from Sybase Central.
There is no support for version 6 and earlier databases running on version 7 and older database servers.
If you are connecting to a version 10.0.0 or later database with a version 9 client application such as Sybase Central or Interactive SQL, the connections use the iAnywhere JDBC driver by default, rather than jConnect. The iAnywhere JDBC driver is the recommended JDBC driver for connecting to SQL Anywhere databases.
Using the utilities
Upgrade quick start
Important upgrade precautions
Upgrading version 10.0.0 databases
Rebuilding version 10.0.0 databases
Upgrading SQL Anywhere software and databases in a database mirroring system
Rebuilding version 9 and earlier databases for version 10.0.0