使用している文字セットがクライアント間で異なる場合、接続文字列の文字セット変換はたいへん困難になります。接続文字列は、データベース・サーバを検出または起動するために、クライアント・ライブラリによって解析されますが、解析はデータベース・サーバの文字セットや言語が未知のまま実行されます。
インタフェース・ライブラリは、接続文字列を次のように解析します。
接続文字列は、keyword=value の組み合わせに分解されます。これは、CommLinks (LINKS) パラメータの前後に中カッコ {} を使用しないかぎり、文字セットにかかわらず実行されます。中カッコの代わりにカッコ () を使用することをおすすめします。中カッコは、一部のマルチバイト文字セットで有効な「フォロー・バイト」 (最初のバイト以外のバイト) です。
サーバが検出されます。サーバ名に対して文字セット変換は実行されません。クライアントとデータベース・サーバとで文字セットが異なる場合、サーバ名に拡張文字が使用されているとサーバが見つからないことがあります。
クライアントとサーバを異なるオペレーティング・システムやロケールで実行している場合は、サーバ名に 7 ビットの ASCII 文字を使用してください。
DatabaseName (DBN) 接続パラメータまたは DatabaseFile (DBF) 接続パラメータは、クライアントの文字セットからデータベース・サーバの文字セットに変換されます。
データベースが検出されると、残りの接続パラメータがデータベースの文字セットに変換されます。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |