ACC2000: Unexpected Characters Appear When You Convert Databases That Have Non-U.S. English Characters
ID: Q202479
|
The information in this article applies to:
Advanced: Requires expert coding, interoperability, and multiuser skills.
This article applies only to a Microsoft Access database (.mdb).
IMPORTANT: This article contains information about editing the registry.
Before you edit the registry, make sure you understand how to restore it if
a problem occurs. For information about how to do this, view the "Restoring
the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help
topic in Regedt32.exe.
SYMPTOMS
When you convert to Microsoft Access 2000 a Microsoft Access 2.0, 95, or 97 database that contains characters specific to a foreign language, unexpected characters appear in the converted database.
CAUSE
Earlier versions of Microsoft Access use ANSI code pages to represent foreign language symbols. When you convert a database to Access 2000 (Jet 4.0), all data is converted to Unicode. This requires that the data be mapped from ANSI code pages to Unicode.
To determine which ANSI code page to use in the mapping process, the Jet database engine uses the code page of the operating system on which you are converting the database.
If the code page of your operating system is U.S. English (1252), the Jet database engine maps the characters specific to a foreign language by using the U.S. English code page. Using the U.S. English code page during the conversion process of a database with characters specific to a foreign language causes incorrect characters to appear in your converted database.
RESOLUTION
Convert databases that contain characters specific to a foreign language on an operating system that uses the code page of the foreign language in question.
When necessary, however, you can add two entries to your computer's registry to force the Jet database engine to use a specific code page when it converts a database.
WARNING: Using Registry Editor incorrectly can cause serious problems that
may require you to reinstall your operating system. Microsoft cannot
guarantee that problems resulting from the incorrect use of Registry Editor
can be solved. Use Registry Editor at your own risk.
For information about how to edit the registry, view the "Changing Keys and
Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete
Information in the Registry" and "Edit Registry Data" Help topics in
Regedt32.exe. Note that you should back up the registry before you edit it.
If you are running Windows NT, you should also update your Emergency
Repair Disk (ERD).
To add the appropriate registry keys to your computer and convert your database, follow these steps:
- Open Registry Editor (regedit.exe).
- Add the following string values to the registry keys:
Key name |
Value name |
Value type |
Value data |
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet3.x |
ForceCP |
String |
Code Page Number (Example: 1252) |
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet2.x |
ForceCP |
String |
Code Page Number (Example: 1252) |
- Close Registry Editor.
To convert your Access database, follow these steps:
- Quit Access 2000.
- Reopen Access 2000, and then open the database that you want to convert.
- When prompted, convert your database.
WARNING: After you have successfully converted the database, remove the registry keys that you added earlier. If you do not do so, all the databases that you convert in the future will be converted with the code page that you specified in the registry.
Additional query words:
OFF2000 prb
Keywords : kbdta CnvErtbl
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbprb