Connection strings and character sets

If all of your clients do not use the same character sets, connection strings may be a challenge during character set conversion. This is because the connection string is parsed by the client library to locate or start a database server. However, this parsing is done with no knowledge of the character set or language in use by the database server.

The interface library parses the connection string as follows:

  1. The connection string is broken down into its keyword=value pairs. This can be done independently of the character set, as long as you do not use curly braces {} around CommLinks (LINKS) connection parameters. Instead, use the recommended parentheses (). Curly braces are valid follow bytes (bytes other than the first byte) in some multibyte character sets.

  2. The database server is located. There is no character set conversion performed on the server name. If the client character set and the database server character set are different, using extended characters in the server name can cause the server to not be found.

    If your clients and servers are running on different operating systems or locales, you should use 7-bit ASCII characters in the database server name.

  3. The DatabaseName (DBN) or DatabaseFile (DBF) connection parameters are converted from client character set to the database server character set.

  4. Once the database is located, the remaining connection parameters are converted to the database's character set.