クライアント接続の言語およびロケール・プリファレンスの設定
ロケール・プリファレンスおよびI/Oデバイス文字セットに応じて、Oracle AI Databaseへのクライアント・アプリケーション接続を構成します。
ロケール・プリファレンスおよびI/Oデバイス文字セットに応じて、Oracle AI Databaseへのクライアント・アプリケーション接続を構成する必要があります。ロケール・プリファレンスを構成する、アプリケーション固有の方法がない場合は、Oracle AI Databaseのクライアント接続を構成するために使用する方法は、データベースへの接続に使用するアクセスAPIによって異なります。アプリケーションのロケール・プリファレンスを構成する前に、アプリケーションのドキュメントを確認してください。
Oracle Call Interface (OCI)を使用してOracle AI Databaseに接続するアプリケーションの場合、NLS_LANGまたはその他のNLS_で始まる名前のクライアント設定を使用して、Oracle AI Databaseセッションのロケール規則およびクライアント文字セットを設定します。NLS_LANG値の文字セット部分を適切に設定することが重要です。NLS_LANGで設定した名前のOracle文字セットは、I/Oデバイスで使用される文字エンコーディングに対応している必要があります。Linuxの場合、これは端末または端末エミュレータの文字エンコーディングで、通常はlocaleコマンドがレポートする内容に対応します。Microsoft Windowsの場合、これは、WE8MSWIN1252などのANSIコード・ページ(GUIアプリケーション用)またはUS8PC437などのOEMコード・ページ(コンソール・モード・アプリケーション用)のいずれかです。これを行うには、アプリケーションから受け取ったデータの文字セットをOCI API側で認識する必要があります。OCIでは、このデータを適切なデータベース文字セットに変換できます。
NLS_LANGおよびその他のNLS設定を環境変数として指定できます。Microsoft Windowsでは、レジストリ設定として指定することもできます。環境変数の値は、レジストリの値よりも優先されます。
Oracle Universal Installerは、Microsoft WindowsでのOracleホームの新規作成時にレジストリのNLS_LANG設定のデフォルト値を設定します。NLS_LANGの値はWindowsのユーザー・インタフェース言語に基づき、これはWindowsのメニュー項目やダイアログ・ボックスのラベルに使用される言語です。インストーラは、Linuxおよびその他のUNIXシステムベースのオペレーティング・システムではNLS_LANGを設定しません。
注意:
クライアントの文字セットが正しく設定されていないと、データ損失の原因になります。Oracle AI Databaseへの接続にOracle JDBCを使用するJavaアプリケーションでは、NLS_LANGを使用しません。かわりにOracle JDBCでは、アプリケーションを実行しているJava VMのデフォルトのロケールをOracle AI Databaseの言語と地域の設定にマップします。その後、これらの設定を使用して接続済のデータベース・セッションがOracle JDBCで構成されます。Javaは内部的にはUnicodeで動作するため、クライアントの文字セットは常にUnicodeに設定します。アプリケーションで明示的にこれを変更しないかぎり、Java VMのデフォルト・ロケールは、Java VMを実行しているユーザーのオペレーティング・システムのロケールに従って設定されます。Java VMのデフォルト・ロケールの構成については、Java VMのドキュメントを参照してください。
ノート:
3層アーキテクチャのデプロイメントで、データベース・クライアントであるアプリケーション・サーバーには、NLS_LANG値またはJava VMロケールの指定を構成ファイルに設定できます。該当サーバーに付属するドキュメントで確認してください。関連項目:
ユーザー・ロケール・プリファレンスの構成の詳細は、Oracle AI Databaseグローバリゼーション・サポート・ガイドを参照してください
親トピック: インストール後の推奨作業