• Topic
  • Discussion
  • UdaWikiWeb.ProgressUnicodeConfig(Last) -- Owiki? , 2016-08-19 15:00:50 Edit owiki 2016-08-19 15:00:50

    Database Configuration for Unicode

    Progress 9.1 (SQL-92)

    The Progress database can be set to use the UTF-8 Unicode codepage. The SQL-92 Client can be also be set to use Unicode. The SQL-92 server uses the codepage of the connected database as its internal codepage. Conversion between the database codepage and the SQL-92 client codepage is done by the server. There are no specific functions provided for converting between codepages within an ESQL-92 program.

    The easiest way to create to Progress Unicode-enabled database is to use the "proutil" program to convert an existing database to UTF-8 format using the following command:

    proutil <db-name> -C convchar convert utf-8
    


    Multibyte characters can be used in character (CHAR) and variable-length character (VARCHAR) fields. Character string literals and the arguments to string functions can also be multibyte characters.

    There are some provisos for specific functions noted in the Progress documentation.

    • Importantly, when the SQL-92 language element syntax requires single quotes, double quotes, parentheses, or braces, the requirement is for the single-byte ASCII encoding of these characters and other encodings are not equivalent.
    • The string operators in Progress SQL-92 consider the unit of length to be the character count, not a byte or column count.
    • When a column of type CHAR or VARCHAR is created, the maximum length specified is a number of characters, so the actual number of bytes storage required depends on the database codepage. The length of character data returned in the sqlda is in bytes, not characters.

    Referenced by...