Consultor Eletrônico



Kbase 19071: I18N. How To Change Database Collation?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   03/11/2008
Status: Verified

GOAL:

How to change the database collation table?

GOAL:

Changing the DataBase Collation Table

GOAL:

DataBase collation table change

FACT(s) (Environment):

Progress 8.x
Progress 9.x
OpenEdge 10

CAUSE:

The primary purpose of the collation table is to provide the Progress sorting algorithm with a sort weight for each character. The sort weight determines the sort order for a character. The heavier the character weight, the further down it falls in sort order.

FIX:

Before making any of the following changes, have a good backup of your database.
To change the sort order, you must modify the numeric values in the table. You can also use the predefined .df files in the %DLC%\PROLANG directory.

For example, the %DLC%\PROLANG\AME directory contains the American specific .df files ame1252.df, ame850.df and ame88591.df with collation Basic.
NOTE: You only have the subdirectories in the PROLANG directory of the installed languages.

Follow these steps to change the collation:

1) Before you change the collation, you must know the correct database code page. The database code page can be found in Data Administration > Utilities > Information.

2) Depending on the database code page, choose:

- ame1252.df for database code page 1252

- ame850.df for IBM 850

- ame88591.df for ISO 8859-1 and similar for other languages

3) Load this file into your database using Data Administration.

4) Run the PROUTIL idxbuild utility to rebuild indexes, otherwise you cannot use the database.

The collation of your database is now changed.
Note: It is necessary to rebuild indexes after the Database Collation change. Not rebuilding indexes may result in a Logical Corruption of the Database.
Note: If the database was created before 10.1A, for example 10.0B, and the collation change is performed in 10.1A, before loading the new collation table it is needed to bring the database schema to 10.1A schema by using the following command:

proutil <dbname> -C updateschema