Symfoware Server 解説書 - FUJITSU - |
目次
索引
![]() ![]() |
第2章 Symfoware Serverの基礎知識 | > 2.4 Symfoware Serverのアーキテクチャ |
Symfoware Serverでは、以下の文字コード系を考慮する必要があります。
データベースの文字コード系
Symfoware/RDBの文字コード系
アプリケーションの文字コード系
データベースに格納する文字列型および各国語文字列型のデータの文字コード系です。データベースの文字コード系として、以下の文字コード系が使用できます。
EUCコード
シフトJISコード
UNICODE
EUCコードは、UNIX系システムの日本語環境でよく使われる文字コード系です。EUCコードには、S90とU90があります。Symfoware Serverでは、S90を使用します。U90コードを使用する場合、日本語拡張表示オプションが必要です。
シフトJISコードは、一般にDOS/Windowsや一部のUNIX系システムでも採用されている文字コード系です。シフトJISコードには、Microsoft系のシフトJISコードや各ベンダが拡張したシフトJISコードが存在します。Symfoware Serverは、Microsoft系のシフトJISコードを採用しています。
UNICODEは、世界各国の文字を統一的に扱うことを目的とした、マルチバイトの文字コード系です。UNICODEを使っている限り、言語種別を意識する必要がありません。
文字コード系とデータベースの格納形式について、以下にまとめます。
文字列型の列は、1文字が可変バイトで表現される形式で格納されます。各国語文字列型の列は、1文字が固定バイトで表現される形式で格納されます。
文字コード系 |
格納形式 |
|
---|---|---|
文字列型 |
各国語文字列型 |
|
EUCコード |
EUCコード |
COBOL_EUC形式 |
シフトJISコード |
シフトJISコード |
シフトJISコード |
UNICODE |
UTF-8形式 |
UCS-2形式 |
Symfoware Serverのインストール時にSymfoware/RDBのロケールが決定します。この時、Symfoware/RDBのロケールに対応して、Symfoware/RDBの文字コード系が決定します。
Symfoware/RDBの文字コード系とは、Symfoware/RDBプロセスが処理する際の文字コード系を示します。Symfoware/RDBが読み込む動作環境ファイルやRDBコマンドの入力ファイルの文字コード系を示します。また、Symfoware/RDBやRDBコマンドが出力するメッセージもこの文字コード系となります。
Symfoware/RDBのロケールとSymfoware/RDBの文字コード系の関係を以下に示します。
Symfoware/RDBのロケール |
Symfoware/RDBの文字コード系 |
|
---|---|---|
|
ja |
EUCコード |
ja_JP.PCK |
シフトJISコード |
|
ja_JP.UTF-8 |
UNICODE |
|
C |
データベースの文字コード系 (注) |
|
|
ja_JP.UTF-8 |
UNICODE |
C |
データベースの文字コード系 (注) |
|
|
日本語 |
シフトJISコード |
注) インストール時に指定するデータベースの文字コード系が適用されます。
アプリケーションのホスト変数や動的パラメタに格納するデータの文字コード系です。SQLMSGに返却されるSQL文の実行結果を示すメッセージもこの文字コード系となります。
アプリケーションの言語と使用可能な文字コード系の組合せを以下に示します。
|
埋込みSQL連携 |
Java連携 |
ODBC連携 |
.NET Framework連携 |
||||||
---|---|---|---|---|---|---|---|---|---|---|
C |
COBOL |
Java |
C++ |
COBOL |
Visual Basic |
Visual Basic .NET |
C# |
COBOL |
Visual Basic .NET |
|
EUCコード |
○ |
○ |
○ |
× |
× |
× |
× |
○ |
○ |
○ |
シフトJISコード(注1) |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
○ |
UNICODE |
○ |
○ |
○ |
○(注2) |
○(注2) |
○(注2) |
○(注2) |
○ |
○ |
○ |
注1) Linuxの場合、シフトJISコードは使用できません。
注2) UCS-2形式のみ使用可能です。
Symfoware Serverでは、アプリケーションが使用する文字コード系とデータベースの文字コード系が異なる場合、自動的にコード変換を行います。詳細は、“アプリケーション開発ガイド(埋込みSQL編)”を参照してください。
アプリケーションの文字コード系の指定方法は、作成するアプリケーションにより異なります。
埋込みSQL連携およびJava連携のアプリケーション
UNIX系の場合、環境変数LANGに、使用する文字コード系のロケールを指定します。Windows(R)の場合、OSのロケールに従います。
詳細は、“アプリケーション開発ガイド(埋込みSQL編)”または“アプリケーション開発ガイド(JDBCドライバ編)”を参照してください。
ODBC連携のアプリケーション
ODBCデータソース登録時に、使用する文字コード系のODBCドライバを登録します。
詳細は、“アプリケーション開発ガイド(ODBCドライバ編)”を参照してください。
.NET Framework連携のアプリケーション
内部的にUNICODEで処理するため、アプリケーションの文字コード系を意識する必要はありません。
詳細は、“アプリケーション開発ガイド(.NET Data Provider編)”を参照してください。
目次
索引
![]() ![]() |