OpenESQL は、COBOL のホスト変数で国際データを使用できるようにさまざまな方法でサポートします。国際データは、DBMS の列に UTF-16、UTF-8、または MBCS (混合バイトまたはマルチバイト文字セット) として格納されます。DBMS クライアント アプリケーションのロケールも国際化することができます。これらは、一般的には MBCS または UTF-8 です。
	 
	 OpenESQL COBOL アプリケーションがホスト変数に国際データを送信するか、ホスト変数から国際データを返すように DBMS に要求を発行すると、OpenESQL がホスト変数宣言自体と DBMS クライアント アプリケーションのロケールに基づいて、適切な COBOL ホスト変数の内容を決定します。 
	 
 
	 データの損失を回避するには、DBMS クライアント アプリケーションのロケールを DBMS 向けの国際エンコーディング仕様と一致させ、次のように、最も適切な COBOL ホスト変数宣言を選択することを強く推奨します。 
	 
 
	 
 
		   
		   
		   
		   
			  
				| COBOL ホスト変数宣言 | DBMS 国際エンコーティング仕様 | サマリー | 
 
		   
			  
				| PIC X | UTF-16 | クライアント アプリケーションのロケール1を使用して、DBMS データがホスト変数に変換されたり、ホスト変数から変換されたりします。 UTF-16 データがご使用のアプリケーションのロケールでサポートされていない場合、データが失われる可能性があります。 
				   | 
 
			  
				| PIC X | UTF-8 | また、クライアント アプリケーションのロケール1が UTF-8 である場合、データの変換または翻訳は行われません。 注: Windows プラットフォームでは、UTF-8 はアプリケーションのロケールとしてサポートされていません。 
				   強く推奨します。 
				   クライアント アプリケーションのロケールが UTF-8 でない場合、クライアント アプリケーションのロケール1 を使用して、DBMS データがホスト変数に変換されたり、ホスト変数から変換されたりします。これにより、データが失われる可能性があります。 
				   | 
 
			  
				| PIC X | MBCS2 | クライアント アプリケーションのロケール1が同じ MBCS2 を使用する場合、データの変換は行われません。 強く推奨します。 
				   クライアント アプリケーションの MBCS が DBMS のそれと一致しない場合、クライアント アプリケーションのロケール1 を使用して、DBMS データがホスト変数に変換されたり、ホスト変数から変換されたりします。これにより、データが失われる可能性があります。 
				   | 
 
			  
				| PIC N USAGE DISPLAY-1 PIC G4 | UTF-16、UTF-8 | クライアント アプリケーションのロケール1を使用して、データがホスト変数に変換されたり、ホスト変数から変換されたりします。  データは、クライアント アプリケーションのロケールの DBCS3に変換されます。これにより、データが失われる可能性があります。
				   | 
 
			  
				| PIC N USAGE DISPLAY-1 PIC G4 | MBCS2 | クライアント アプリケーションのロケール1が同じ MBCS2 を使用する場合、データの小規模な変換または翻訳が行われます。この場合、DBMS のシングルバイト文字は、クライアント アプリケーションのロケールの DBCS3 に変換されたり、DBCS から変換されたりします。 クライアント アプリケーションの MBCS が DBMS のものと一致しない場合、データが失われる可能性があります。 
				   | 
 
			  
				| PIC N USAGE NATIONAL | UTF-16 | データの変換または翻訳は行われません。 強く推奨します。 
				   | 
			 
				| PIC N USAGE NATIONAL | UTF-8、MBCS2 | 形式が UTF-16 の場合、DBMS データがホスト変数に変換されたり、ホスト変数から変換されたりします。 データが UTF-8 と MBCS との間でホスト変数の UTF-16 形式に変換されたり、UTF-16 形式から変換されたりするので、データが失われることはありません。
				    推奨されます。
				   | 
 
			  
				| 1コード ページ 2混合バイトまたはマルチバイト文字セットシングルバイト (SBCS) とダブルバイト (DBCS) で表現できる文字を含む混合文字セットをサポートするのに使用します。MBCS は日本、中国、韓国で存在します。たとえば、MBCS 932 は日本語用です。
				   3ダブルバイト文字セット。DBCS は、MBCS のダブルバイト文字を表す構成要素です。
				   4ご使用の COBOL プログラムに含まれる PIC N USAGE DISPLAY-1 および PIC G ホスト変数は、常にクライアント アプリケーションのロケールに対応する DBCS を使用します。 
				   | 
 
		  
 
		
 例 1 
	 
 
	 DBMS に MBCS または UTF-8 を格納する場合、クライアント アプリケーションのロケールを同じ値に設定し、COBOL プログラムで PIC X ホスト変数を使用するのが最適です。 
	 
 
	  例 2 
	 
 
	  データベースに UTF-16 を格納する場合、COBOL プログラムで PIC N USAGE NATIONAL ホスト変数を使用するのが最適です。