目的
この制御によって、ユーザーは、既存および後続のデータベース セッションの文字セットの名前を指定できます。
構文
次のような場合に当てはまります。
- charstring
- 文字セットの名前。 数値コードではなく、名前の使用を推奨します。
この名前は、30文字を超えてはなりません。
- code
- 文字セットを表わす数値コード。
コード範囲:0~255
使用上の注意
名前または数値コードのいずれかで、文字セットを選択することができます。 名前で選択する場合の値は、DBC.CharTranslationsビューのCharSetName列に存在していなければなりません。 数値コードで選択する場合の値は、DBC.CharTranslationsビューのCharSetId列に存在していなければなりません。 後続のSQLリクエストが送信された場合に、指定した文字セットの名前またはコードの有効性がTeradata Databaseによって判別されます。
システム テーブル ビューの詳細については、<International Character Set Support、B035-1125>を参照してください。
コマンド/文を処理する前に、-c、-e、および-mコマンド ライン オプションを使用して、ワークステーション接続システムのセッション文字セットとI/Oエンコードを設定することもできます。 対話型Unicodeセッションには、-cオプションと共に-mオプションを使用することを推奨します。 これにより、stdio、RUNファイル、MESSAGEOUTファイルに影響を与えるロケール固有の文字の受け入れと表示ができるようになります。 SESSION CHARSET設定は、UTF8またはUTF16のままとなり、インポート/エクスポート ファイル、SQL(内部)ストアド プロシージャ ファイル、データベースとの間の通信に使用されます。
以下は、コマンド ライン オプションの使用例です。
コマンド ライン オプション | 説明 |
---|---|
bteq | 対話モード。文字セットとI/OエンコードはデフォルトでASCIIに設定される |
bteq -c ASCII < script | ASCIIスクリプトを使用するバッチ モード。文字セットとI/OエンコードはASCIIになる |
bteq -c KANJISJIS_0S | 対話モード。文字セットとI/OエンコードはKanjiShift-JISになる |
bteq -c UTF8 < script | UTF-8スクリプトを使用するバッチ モード。文字セットとI/OエンコードはUTF8になる |
bteq -c UTF16 < script | UTF-16スクリプトを使用するバッチ モード。文字セットとI/OエンコードはUTF16になる |
bteq -e UTF8 -c UTF16 < script | UTF-8スクリプトを使用するバッチ モード。文字セットはUTF16、I/OエンコードはUTF8になる |
bteq -e 62 -c 63 < script | UTF-16スクリプトを使用するバッチ モード。文字セットはUTF8、I/OエンコードはUTF16になる |
bteq -c UTF16 -m | 対話モード。文字セットはUTF16になり、I/Oエンコードはロケールに基づいて設定される |
bteq -c UTF8 -m | 対話モード。文字セットはUTF8になり、I/Oエンコードはロケールに基づいて設定される |
メインフレーム接続システムでは、コマンド ライン オプションは使用できません。 HSHSPB内の"charset_id"が定義されていない場合には、BTEQはデフォルトでセッション文字セットとI/OエンコードをEBCDICに設定します。
コマンド ライン オプションの詳細については、コマンド ライン オプションを参照してください。
ワークステーション接続システムでは、これらのコマンド ライン オプションとclispb.datファイル内の"charset_id"が使用されていない場合、BTEQはデフォルトでセッション文字セットとI/OエンコードをASCIIに設定します。
BTEQWINでは、SESSION CHARSETコマンドの用途は限られています。 BTEQWINはセッション文字セットASCII、UTF8、UTF16、およびKANJISJIS_0Sのみサポートします。 BTEQWINは他の文字セットをサポートしません。Unicode文字セットでほとんどの言語の文字を表示できるためです。
条件 | 結果 |
---|---|
既存のセッション文字セットとI/OエンコードがいずれもUTF16であるか、または-mオプションが使用されている | SESSION CHARSETコマンドは使用できない。 |
既存のセッション文字セットがUTF16で、I/OエンコードがUTF8である | 新しいセッション文字セットがUTF8に制限される。 |
既存のセッション文字セットがUTF8で、I/OエンコードがUTF16である | 新しいセッション文字セットがUTF16に制限される。 |
既存のセッション文字セットとI/OエンコードがいずれもUTF8である | 新しいセッション文字セットにUTF16は使用できない。 |
既存のセッション文字セットが非Unicodeである | 新しいセッション文字セットにUTF16は使用できない。 |
エクスポート ファイルが開いているとき、またはMESSAGEOUTコマンドで開いているファイルに標準出力を書き込んでいるとき、非ASCII文字セットに切り替えることはしません。 詳細は、MESSAGEOUTを参照してください。
例1 – SESSION CHARSET
セッション中に文字セットをドイツ語に変更するには、次のように入力します。
.SET SESSION CHARSET 'GermanASCII'
例2 – SESSION CHARSET
デフォルトの文字セットに戻すためには、次のように入れます。
.SET SESSION CHARSET
例3 – SESSION CHARSET
セッションに対して確立されている文字セットを確認するには、以下を入力します。
.foldline on all .sidetitles on help session;
BTEQの応答
*** Help information returned. One row. *** Total elapsed time was 1 second. User Name DBC Account Name DBC Logon Date 05/11/14 Logon Time 10:21:40 Current DataBase DBC Collation ASCII Character Set ASCII Transaction Semantics Teradata Current DateForm IntegerDate Session Time Zone 00:00 Default Character Type LATIN Export Latin 1 Export Unicode 1 Export Unicode Adjust 0 Export KanjiSJIS 1 Export Graphic 0 Default Date Format YY/MM/DD Radix Separator . Group Separator , Grouping Rule 3 Currency Radix Separator . Currency Group Separator , Currency Grouping Rule 3 Currency Name US Dollars Currency $ ISOCurrency USD Dual Currency Name US Dollars Dual Currency $ Dual ISOCurrency USD Default ByteInt format -(3)9 Default Integer format -(10)9 Default SmallInt format -(5)9 Default Numeric format --(I).9(F) Default Real format -9.99999999999999E-999 Default Time format HH:MI:SS.S(F)Z Default Timestamp format YYYY-MM-DDBHH:MI:SS.S(F)Z Current Role Logon Account DBC Profile LDAP N Audit Trail Id DBC Current Isolation Level SR