Symfoware Server アプリケーション開発ガイド(埋込みSQL編) - FUJITSU -
目次 索引 前ページ次ページ

第2章 アプリケーションの設計> 2.2 文字コード系の考慮

2.2.1 文字コード系の決定

C言語およびCOBOL言語のアプリケーションで使用する文字コード系について説明します。

アプリケーションで使用可能な文字コード

C言語およびCOBOL言語のアプリケーションでは、以下の文字コード系が使用できます。

使用する文字コード系はアプリケーションのロケールで指定します。アプリケーションのロケールは、以下のように指定します。

[表:アプリケーションのロケールの指定]

対象OS

ロケールの指定


環境変数LANGでロケールを指定します。

OSのロケールに従います。

UNIX系システムでは環境変数LANGに、Cロケールを指定することも可能です。Symfoware/RDBは、ロケールの言語がjaで始まる場合は日本語のメッセージを出力し、それ以外のロケール(Cロケールなど)の場合は英語でメッセージを出力します。Cロケールの場合、アプリケーションが動作する環境によって、アプリケーションの文字コード系は以下のようになります。

アプリケーションが動作する環境

アプリケーションの文字コード系

Symfoware/RDBと同一サーバのアプリケーション

Symfoware/RDBインストール時に指定するデータベースの文字コード系

Connection Managerを利用するアプリケーション

Connection Managerインストール時に指定するアプリケーションの文字コード系

クライアント端末のアプリケーション

Symfoware Server クライアント機能インストール時に指定するアプリケーションの文字コード系

■ホスト変数の文字コード系

アプリケーションで使用するホスト変数、動的パラメタ、およびSQLMSGの文字コード系について説明します。

◆C言語のアプリケーションで使用するホスト変数の文字コード系

アプリケーションで使用するホスト変数、動的パラメタ、およびSQLMSGの文字コード系は、環境変数LANGの値によって決定します。これを変更するには、クライアント用の動作環境ファイルのパラメタCHAR_SETおよびNCHAR_CODEで指定します。

文字列型ホスト変数の文字コード系は、パラメタCHAR_SETに指定します。指定する値を以下に示します。

[表: 文字列型ホスト変数の文字コード系]

文字コード系

CHAR_SETの指定値

EUCコード

S90コード

EUC_S90

U90コード

EUC_U90またはEUC

シフトJISコード

SJIS

UNICODE

UTF-8形式

UTF8

各国語文字列型ホスト変数の文字コード系は、パラメタNCHAR_CODEに指定します。指定する値を以下に示します。

[表: 各国語文字列型ホスト変数の文字コード系]

文字コード系

NCHAR_CODEの指定値

EUCコード

S90コード

EUC_S90

U90コード

EUC_U90またはEUC

S90コード(COBOL_EUC形式)

COBOL_EUC_S90

U90コード(COBOL_EUC形式)

COBOL_EUC_U90またはCOBOL_EUC

シフトJISコード

SJIS

UNICODE

UTF-8形式

UTF8

UCS-2形式

UCS2

バイトスワップしたUCS-2形式

UCS2B

クライアント用の動作環境ファイルに文字コード系が指定されていない場合は、環境変数LANGの値によってデフォルトの文字コード系が決まります。環境変数LANGと使用される文字コード系の関係を以下に示します。

[表:デフォルトの文字コード系]

環境変数LANGの値

文字列型ホスト変数の格納形式

各国語文字列型ホスト変数の格納形式

ja

EUCコード

ja_JP.PCK

シフトJISコード

ja_JP.UTF-8

UTF-8形式

◆COBOL言語のアプリケーションで使用するホスト変数の文字コード系

アプリケーションで使用するホスト変数、動的パラメタ、およびSQLMSGでは以下の文字コード系が使用できます。

文字列型ホスト変数および各国語文字列型のホスト変数の文字コード系は、環境変数LANGの値によって決まります。環境変数LANGとコード系の関係を以下に示します。

[表:COBOL言語のアプリケーションの文字コード系]

環境変数LANGの値

文字列型ホスト変数の格納形式

各国語文字列型ホスト変数の格納形式

ja

EUCコード

COBOL_EUC形式

ja_JP.PCK

シフトJISコード

ja_JP.UTF-8

UTF-8形式

UCS-2形式

バイトスワップしたUCS-2形式(注)

注) コンパイル時のオプションの指定により、ビッグエンディアンとリトルエンディアンのいずれかの形式を選択することができます。

アプリケーションで使用するホスト変数、動的パラメタ、およびSQLMSGでは、シフトJISコードまたはUNICODEが使用できます。UNICODEを使用する場合、アプリケーションのコンパイル時にオプションで指定します。

文字コード系とホスト変数の格納形式の関係を以下に示します。

[表:COBOL言語のアプリケーションの文字コード系とホスト変数の格納形式]

文字コード系

文字列型ホスト変数の格納形式

各国語文字列型ホスト変数の格納形式

シフトJISコード

シフトJISコード

UNICODE

UTF-8形式

バイトスワップしたUCS-2形式

 

COBOL言語のアプリケーションの場合は、クライアント用の動作環境ファイルに指定されたパラメタCHAR_SETおよびNCHAR_CODEは無視されます。

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007-2008