デフォルトのクライアント文字セットおよびデフォルトのサーバー文字セットはユーザー レベルで変更することができ、ユーザーはセッション中に代替セットを選択することもできます。
デフォルトのクライアント文字セット
DBC.Hostsテーブルでクライアント文字セットをクライアント用のデフォルトとして定義しない場合、そのクライアントにネイティブな文字セットが自動的にデフォルトとなります。
セッション中に、SQL HELP SESSION文を使用してどのクライアント文字セットが有効かを知ることができ、特定のクライアント ソフトウェアに応じてさまざまな方法で異なる(しかしアクティブな)クライアント文字セットを指定できます。例えば、BTEQクライアント ソフトウェアによって、SESSION CHARSETコマンドを使用できます。
.SET SESSION CHARSET ASCII
SESSION CHARSETコマンドを使用できる場合の詳細については、<Basic Teradata®Queryリファレンス、B035-2414>を参照してください。
デフォルトのサーバー文字セット
ユーザーの文字セットを指定するには、DEFAULT CHARACTER SET句を指定してCREATE USERリクエストまたはMODIFY USERリクエストを発行します。ユーザーを作成または変更するときに、この句を指定しない場合、DBS制御ユーティリティのデフォルト文字セット フィールドの設定によって、デフォルトの文字セットが決まります。
デフォルト文字セット フィールドのデフォルト値は、日本語言語サポート モードの場合は0 (Unicode)であり、標準言語サポート モードの場合は1 (Latin)です。
ユーザーDBCの文字セットを変更する場合、再コンパイルしないとユーザー定義関数が機能しないことがあります。また、以下を実行する必要があります。
- DIPUDTおよびDIPDEMの再実行
- SQL_TEXTを使用するすべてのサイト定義DBC関数の再コンパイル