1.3.1 文字集合の形式と規則
(1) 説明
文字集合は文字データに対する属性であり,次の三つの属性を持ちます。
-
使用形式
文字を表現する規約のことです。
-
文字レパートリ
表現できる文字の集合のことです。
-
既定の照合順
二つの文字列データを表現する規約のことです。どの文字集合にも,既定の照合順があります。
(2) 形式
文字集合指定::= [MASTER.]文字集合名
文字集合名 ::= {EBCDIK|UTF16}
(3) 規則
-
使用できる文字集合について次の表に示します。
表1‒9 HiRDBで使用できる文字集合 文字集合名
使用形式
文字レパートリ
既定の照合順
EBCDIK
EBCDIKコード。
文字は8ビットの単一バイト文字コードで表現されます。
EBCDIKコードのすべての文字
ビット組み合わせによるコード順
UTF16
JIS X 0221(ISO/IEC 10646)で規定され,各文字が2又は4バイトで符号化される文字符号化形式で表現されます。バイト順序はビッグエンディアンです。
Unicodeのすべての文字
ビット組み合わせによるコード順
-
pdntenvコマンド(UNIX版の場合はpdsetupコマンド)で文字コード種別にsjis以外を指定した場合,文字集合指定にEBCDIKを指定できません。
-
pdntenvコマンド(UNIX版の場合はpdsetupコマンド)で文字コード種別にutf-8,utf-8_ivs以外を指定した場合,文字集合指定にUTF16を指定できません。
-
文字集合指定は,文字データ型が指定できる箇所に指定できます。混在文字データ型,各国文字データ型に対しては指定できません。
-
文字集合指定を省略した場合は,pdntenvコマンド(UNIX版の場合はpdsetupコマンド)で指定した文字コード種別の文字コードを文字集合として仮定します。文字集合指定を省略して仮定された文字集合を,既定文字集合といいます。pdntenvコマンド(UNIX版の場合はpdsetupコマンド)で指定した文字コード種別と文字集合との対応を,次の表に示します。
表1‒10 pdntenv(pdsetup)コマンドで指定した文字コードと仮定する既定文字集合 コマンドで指定した文字コード種別
既定文字集合
sjis
シフトJIS漢字コード
chinese
EUC中国語漢字コード
ujis
EUC日本語漢字コード
utf-8
Unicode(UTF-8)
utf-8_ivs
Unicode(IVS対応UTF-8)
lang-c
単一バイト文字コード
chinese-gb18030
中国語漢字コード(GB18030)
(4) 留意事項
?パラメタを介して,文字コードがUTF-16のデータを操作する場合,文字集合名記述領域に文字集合名を指定します。また,プリプロセスオプション,及び埋込み変数の定義に,文字コードがUTF-16のデータを操作できる指定をすることで,埋込み変数を介して文字コードがUTF-16のデータを操作できるようになります。このとき,SQLプリプロセサは,指定されたプリプロセスオプション,及び埋込み変数に基づいて文字集合名を仮定します。
文字集合名にはUTF16に加え,UTF-16LE,及びUTF-16BEが指定できます。
以降の説明では,文字集合名UTF16には,UTF-16LE,UTF-16BEが含まれているものとします。
なお,プリプロセスオプション,埋込み変数の定義,及び文字集合名記述領域に指定する文字集合の詳細については,マニュアル「HiRDB UAP開発ガイド」を参照してください。