アプリケーション開発の手引き

CREATE DISTINCT TYPE の使用例

以下に CREATE DISTINCT TYPE の使用例を示します。

例: 通貨

たとえば、異なる通貨を扱う必要のあるアプリケーションを作成中で、照会の際に、これらの通貨を直接比較または操作するのを DB2 が認めないようにしたいとします。なお、異なる通貨の値を比較する場合には、必ず変換が必要です。それで、必要な数の特殊タイプを定義します。特殊タイプは、表現したい通貨ごとに 1 つずつ必要です。

     CREATE DISTINCT TYPE US_DOLLAR AS DECIMAL (9,2) WITH COMPARISONS
     CREATE DISTINCT TYPE CANADIAN_DOLLAR AS DECIMAL (9,2) WITH COMPARISONS
     CREATE DISTINCT TYPE EURO AS DECIMAL (9,2) WITH COMPARISONS

なお、比較演算子は、DECIMAL (9,2) 上でサポートされるので、 WITH COMPARISONS を指定しなければなりません。

例: ジョブ・アプリケーション

たとえば、会社への応募者が記入した書式を DB2 の表中に保持したいので、そのような書式から情報を抽出する関数を使用するとします。これらの関数は標準文字ストリングに適用できないため (戻すことになっている情報を確実に検出できるわけでないため)、記入された書式を表示する特殊タイプを定義します。

     CREATE DISTINCT TYPE PERSONAL.APPLICATION_FORM AS CLOB(32K)

DB2 は CLOB の比較をサポートしないので、 WITH COMPARISONS という文節は指定しません。 DBADM 権限を持っていたために自分の許可 ID と異なるスキーマ名を指定したので、応募者の書式を扱うすべての特殊タイプおよび UDF を同じスキーマに保持したいとします。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]