Accessing Unicode data
PowerBuilder can connect, save, and retrieve data in ANSI/DBCS
databases using the IN9 interface, but the IN9 interface does not
support Unicode databases. The Informix I10 interface supports ANSI/DBCS
and Unicode databases.
The I10 native interface uses the Informix GLS (Global Language
Support) API for global language support. The native interface uses
three DBParms to help you set up the locale used in the current
connection:
These parameters are available on the Regional Settings tab page
in the Database Profile Setup dialog box.
Client_Locale
Client_Locale specifies the value of the Informix environment
variable CLIENT_LOCALE. The format is language_territory.codeset. For
example:
|
1 2 |
Client_Locale='en_us.1252' Client_Locale='en_us.utf8' |
The I10 interface uses this setting to access string data in an
Informix database and to process SQL statements. If you do not set the
DBParm, the default locale value is based on the OS locale.
DB_Locale
DB_Locale specifies the value of the Informix environment variable
DB_LOCALE. The format is language_territory.codeset. For example:
|
1 2 |
DB_Locale='en_us.1252' DB_Locale='en_us.utf8' |
DB_LOCALE specifies the language, territory, and code set that the
database server needs to correctly interpret locale-sensitive datatypes
such as NChar and NVarChar in a specific database. The code set
specified in DB_LOCALE determines which characters are valid in any
character column, as well as in the names of database objects such as
databases, tables, columns, and views. If you do not set the DBParm, the
I10 interface assumes that the DB_LOCALE value is the same as the
CLIENT_LOCALE value.
You can set the CLIENT_LOCALE and DB_LOCALE environment variables
directly using the Informix Setnet32 utility, available in the Utilities
folder for the Informix database interfaces in the Objects view in the
Database painter or the Database Profiles dialog box.
For more information about the Informix CLIENT_LOCALE and
DB_LOCALE environment variables, see the IBM Informix GLS User’s Guide,
currently available at the Informix library website at http://publib.boulder.ibm.com/infocenter/idshelp/v111/index.jsp?topic=/com.ibm.glsug.doc/glsug.htm.
StrByCharset
The StrByCharset DBParm specifies how to convert string data
between PowerBuilder Unicode strings and Informix client multibyte
strings. By default, string conversion for UTF-8 code sets is based on
the UTF-8 code set, and string conversion for non-UTF-8 code sets is
based on the current OS code page. If StrByCharset is set to 1 (true),
string conversion is based on the code set specified in the DBParm
Client_Locale.