17.10 - DISTINCT型UDTを作成するために行なうべき作業 - 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
日本語 (日本)

DISTINCT型は固有のデータ変換、順序付け、およびキャストの機能が備わった状態で作成されるため(DISTINCT型UDT用のシステム生成デフォルト機能を参照)、それらの機能を作成または活動化するために何かをする必要はありません。これらの多様な機能は、CREATE TYPEリクエストを実行したときに自動的に生成され活動化されます。

したがって、全機能を備えた最小のDISTINCT型UDTを作成するのであれば、CREATE TYPEリクエストさえ実行すればよいことになります。その際に、以下の関連機能がシステムによって自動的に生成されます。
  • 2つのDISTINCT型UDTを比較する順序付け機能
  • 現在のDISTINCT型UDTをクライアントとVantageの間で受渡しできるようにするデータ変換グループ
  • 基礎となる事前定義データ型とDISTINCT型UDTとの間での双方向のキャスト操作を可能にするキャスト機能(割当て時の暗黙キャストを含む)。

現在使用しているDISTINCT型UDTのアプリケーションに追加機能が必要である場合は、インスタンス メソッドをCまたはC++言語で作成し、CREATE INSTANCE METHOD文を実行してSQL呼び出しメソッドを宣言し、そのメソッドをDISTINCT型UDTに関連付けることができます。

ユーザーは独自の整列、変換、キャストの機能を定義できます。

次の概要手順を実行する必要があります。

  1. 以下のリストから適切なSQL DROP文を使用して、置き換える対象のシステム生成のキャスト、順序付け、またはデータ変換機能を削除します。
    • DROP CAST (<Teradata Vantage™ - SQLデータ定義言語-構文規則および例>を参照)。
    • DROP ORDERING(DROP ORDERINGを参照)。
    • DROP TRANSFORM(DROP TRANSFORMを参照)。
  2. 適切な外部ルーチンをCまたはC++でコード化します(<Teradata Vantage™- SQL外部ルーチン プログラミング、B035-1147>を参照)。
  3. 以下のリストから適切なSQL CREATE文を使用して、UDT用の新しいキャスト、順序付け、またはデータ変換機能を作成します。