スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド
付録H.4 文字コード種別設定関数
(1) 文字コード種別設定関数の詳細
記述構成については,「付録H.1(3)(b) 記述構成」を参照してください。
- 機能
- 表分割ハッシュ関数,及び空白変換関数が扱う文字コードの種別を設定します。
- ヘッダファイル
- #include<pdauxcnv.h>
- 文字コード種別設定関数を使用する場合に必ず指定します。
- 形式
int p_rdb_set_lang(char *lang); |
- 引数
- lang(入力)
- 表分割ハッシュ関数,及び空白変換関数が扱う文字コードの種別を設定します。
- この引数には,次の文字コードが指定できます。
文字コード種別 |
引数langの指定値 |
シフトJIS漢字コード※1 |
"SJIS" |
EUC中国語漢字コード |
"CHINESE" |
単一バイト文字コード※2 |
"C" |
Unicode(UTF-8) |
"UTF8" |
中国語漢字コード(GB18030) |
"GB18030" |
- 注※1 Linux,及びWindowsの場合に指定できます。
- 注※2 Windowsの場合に指定できます。
- 空の文字列を指定した場合(例:p_rdb_set_lang ("")),次のような動作となります。
- UNIX環境の場合
この関数の前に実行したsetlocale関数で,LC_ALLカテゴリに設定したロケールに対応する文字コード種別が設定されます。setlocale関数を実行していない場合は,LC_ALLカテゴリのデフォルトのロケールに対応する文字コード種別が設定されます。
- Windows環境の場合
OSのデフォルトとなる文字コード種別が設定されます。ただし,OSのデフォルトを上記の表以外の文字コード種別に設定している場合は,動作が保証されません。
- 戻り値
- データ型:int
- p_rdb_RC_RTRN(0)
- 正常終了
- p_rdb_RC_ERRIVLG(-10)
- 文字コード種別不正
- 注意事項
- p_rdb_set_langは,次のどれかに該当する場合,必ず実行してください。
・Windows環境のUAPで文字コード種別を設定するとき
・UNIX環境のUAPでp_rdb_conv_space_utf8を呼び出すとき※
・Linux環境のUAPで,文字コード種別をSJISに設定するとき
・UNIX環境のUAPで,文字コード種別をCHINESEに設定するとき
注※
p_rdb_conv_space_utf8を呼び出す前にp_rdb_set_langを実行してください。ただし,空白変換関数p_rdb_conv_spaceを呼び出す場合は,この関数ではなく,OS提供の関数setlocaleを使用してください。
- UNIX環境の場合,この関数で文字コード種別を設定した後に,使用できない文字コード種別を使用して別の関数を使用するときは,p_rdb_set_lang("")を発行してから,setlocale関数を呼び出して適切な文字コード種別を設定し直す必要があります。
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.