Try OpenEdge Now
skip to main content
Database Administration
Reference : PROUTIL Utility : PROUTIL CONVCHAR qualifier
 

PROUTIL CONVCHAR qualifier

Converts a database's character set or identifies a database's character set for undefined databases.
proutil db-name -C convchar [ analyze | charscan | convert ]
                            [codepage][character-list]

Parameters

db-name
Specifies the database you are converting.
analyze
Scans the database and displays the fields that would be converted using the convert function.
charscan
Searches every character field for the occurrence of any character from the provided character list and reports the table name, field name, record ID of a match, and the total number of occurrences. In addition, PROUTIL CONVCHAR CHARSCAN performs the same analysis that PROUTIL CONVCHAR ANALYSIS performs.
If invalid data is entered with the charscan option, PROUTIL CONVCHAR generates an error message and continues with the scan.
convert
Converts a database's character data to the target code page and labels the database.
Note: PROUTIL CONVCHAR CONVERT does not convert DBCODEPAGE CLOBs (character large objects) to the new code page; instead, it changes DBCODEPAGE CLOBs to COLUMN-CODEPAGE CLOBs with their existing settings.
codepage
Specifies the value of any single-byte, double-byte, or Unicode code page. Possible values are undefined or any (target) code page name for a conversion table in your conversion map file (by default, OpenEdge-install-dir/convmap.cp). If you specify a code page name, the PROUTIL CONVCHAR utility must find the appropriate conversion table in the conversion map file. If you specify undefined, no conversions take place and the database's code page name is changed to undefined.
If you specify a code page name against a database with a code page name of undefined, no conversions take place and the database's code page name is changed to the value you specify.
Note: When you change the code page of a database from "undefined" using proutil dbname -C convchar convert codepage, PROUTIL CONVCHAR generates warning messages. After you receive these messages, you might need to load the collation table for the code page. The collation table data definition files have a .df extension and are located in OpenEdge-install-dir/prolang/<language>.
When you specify a code page value with analyze, it scans the database and identifies the database's current code page encoding and the fields that require translation if you were to use the convert function with that code page specification.
When you use the code page parameter with convert, it specifies the code page to which you want to convert the database and specifies the code page name for the database.
character-list
Specifies a quoted string of comma-separated numbers in either hex or decimal. These numbers represent character values in the code page. Specify ranges with a minus sign ("128 - 144").
Note: Quotes are not needed if there are no blanks within the list (128-144,122).
Hex values must begin with 0x. For example, the syntax to run PROUTIL CONVCHAR with the decimal list "128, 129, 130" provided in hex is:
proutil sports2000 -C convchar charscan ibm850 "0x80, 0x81, 0x82"
Note also that hex and decimal values can be mixed. For example:
proutil sports2000 -C convchar charscan 1253 "128, 0xC2, 0x7f, 122"
If a range contains valid and invalid characters, PROUTIL CONVCHAR ignores the invalid character. For example:
proutil sports2000 -C convchar charscan 1253 "49854 - 50050"
Searches and returns the following:
Charscan searching for utf-8 character: 49854 0xc2be. (6570) Charscan searching for utf-8 character: 49855 0xc2bf. (6570) Charscan searching for utf-8 character: 50048 0xc380. (6570) Charscan searching for utf-8 character: 50049 0xc381. (6570) Charscan searching for utf-8 character: 50050 0xc382. (6570)
If charscan is selected but no character list is specified, the analyze function performs.
When converting a database's character set, PROUTIL CONVCHAR converts all of the textual data in the database. For more information about character set processing, see OpenEdge Development: Internationalizing Applications.