17.10 - 文字セットの処理 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1184-171K-JPN
Language
日本語 (日本)

事前定義データ型がある属性の文字タイプとして定義されている場合、CHARACTER SET句を指定してその属性に文字セットを関連付けることもできます。文字セットを指定しない場合、システムはUDTがDBC.TVFieldsに作成された時点で文字属性の文字セットとして有効であった文字セットを保存します。

データベースのUDFライブラリに、名前にマルチバイト文字が存在するオブジェクトが含まれている場合、新規オブジェクト名に1バイト文字のみが含まれる場合でも、1バイト セッション文字セットを使用して、新たなUDF、UDT、メソッド、あるいはJava外部プロシージャ オブジェクトを作成することはできません。それ以外の場合、データベースはリクエストをアボートし、リクエスト側にエラーを返します。必ずマルチバイト セッション文字セットを使用するようにしてください。

文字属性をオブザーバー メソッドまたはミュテーター メソッドによって操作する場合、その属性タイプに関連付けられる文字セットは以下のいずれかでなければなりません。
  • STRUCTURED型UDTを作成したCREATE TYPE文で、その属性に対して宣言されていた文字セット。
  • CREATE TYPE文が実行されたときに有効であった文字セット。

照合情報が文字タイプとともに保存されていないため、UDTにアクセスした時点で有効な照合順序が常に有効な照合です。

CHARACTER SET句は、自動生成ルーチンに影響します。明示的に指定されたCHARACTER SET句は、自動生成を登録します。
  • 指定された文字セットの文字タイプ値を返すオブザーバー メソッド。
  • 指定された文字セットの文字パラメータ タイプを渡すミュテーター メソッド。

事前定義データ型の属性としてサポートされている句は、CHARACTER SET句だけです。システムは、CASESPECIFICなどの列属性をサポートしません。属性にアクセスした時点で(自動生成されたルーチンが呼び出されたときに)有効である大文字小文字の区別のデフォルト設定が、大文字小文字の区別の有効な設定になります。