16.20 - 例 - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQL演算子およびユーザー定義関数

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
管理
featnum
B035-1210-162K-JPN

addressという名前のSTRUCTURED型UDTを作成する次のような文について考えてみましょう。

CREATE TYPE address
AS (street VARCHAR(20)
   ,zip CHAR(5))
NOT FINAL;

以下の文は、locationという名前のaddress列を定義するテーブルを作成します。

CREATE TABLE european_sales
  (region INTEGER
  ,location address
  ,sales DECIMAL(8,2));

以下の文は、NEWを使ってaddress値をeuropean_salesテーブルに挿入します。

INSERT european_sales (1001, NEW address(), 0);

address UDT用に自動生成されたデフォルトのコンストラクタ関数が選択されます。その理由は、引数リストが空であり、コンストラクタ メソッドの定義がないaddress UDTが作成されているからです。デフォルトのaddressコンストラクタ関数は、street属性とzip属性をNULLに初期化します。

以下の文は、前のINSERT文と同等ですが、NEWを使わないでコンストラクタ関数を呼び出します。

INSERT european_sales (1001, address(), 0);

XML型インスタンスを作成するには、<Teradata XML>を参照してください。