Please be aware that the content in SAP SQL Anywhere Forum will be migrated to the SAP Community in June and this forum will be retired.

I am trying to migrate the Sybase Anywhere database from version 6.0 to 12. I am using Sybase Central to 'unload the data and structure' and load to the new database. The migration is successful, however in the new database the non-english characters like ä , ö become unreadable, such as Σ and ÷ etc. I think it is some character encoding problem. How can I fix it? Thanks

asked 04 Nov '11, 03:20

sam's gravatar image

accept rate: 0%

edited 04 Nov '11, 03:52


What collation are you using in the v6 database and in the v12 databases?

For newer versions,

select db_property('Collation')

(or Sybase Central) will tell you this, otherwise you can use the DBINFO tool.

(04 Nov '11, 08:03) Volker Barth

Rebuilding databases where the original database collation does not match the character set stored in the database can be tricky. A common issue in early SA databases was databases using collations with cp850 (DOS character set) talking to Windows applications loading the database with cp1252 (Windows character set). Since early databases did not have char set conversion, or had it but it was off by default, it was possible to work for years without realizing that the data and collation did not match.

To fix a situation like this, the essential steps are:

  1. Identify exactly what char set is in the old database.
  2. If the char set and collation don't match, unload the database without char set conversion. This ensures that the data you get in your output files has not been mangled by conversion. The data is in the char set that was stored in the database. If possible, use an editor that can handle the char to view the data and ensure that it looks correct.
  3. Create your new database with a compatible collation, one that can handle all of the characters in the data to be loaded.
  4. Load the new database, specifying the char set of the unloaded data. Char set conversion should be enabled assuming that you have correctly identified the unloaded data's char set and have selected a compatible collation.

If the original database contains data with mixed and incompatible char sets, manual cleanup will be required. Unload the data without conversion, use an editor that can handle the characters in the files, and clean up the data before attempting to load it into the new database.

Here is a description of some of the considerations and the tools available in SA12:*d5e29036

permanent link

answered 04 Nov '11, 15:57

Steven%20McDowell's gravatar image

Steven McDowell
accept rate: 40%

edited 04 Nov '11, 17:44

Graham%20Hurst's gravatar image

Graham Hurst

Create the new database manually using e.g. dbinit or sybase central and define the correct collation and encoding for the new database. Then unload the old database into the existing new database. See the -ac command line switch of dbunload or use the sybase central wizard.

permanent link

answered 04 Nov '11, 03:47

Martin's gravatar image

accept rate: 14%

Thanks, I have tried that as well, but still same problem.

(04 Nov '11, 06:35) sam
Replies hidden

If you can specify the collation your original database was using, and the one you are using for the new one, someone may be able to spot the problem.

(04 Nov '11, 08:00) Justin Willey
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 04 Nov '11, 03:20

question was seen: 3,341 times

last updated: 04 Nov '11, 17:44