例: INSERTおよびGENERATED BY DEFAULT識別列 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ操作言語

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/vjt1596846980081.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage

例: INSERTおよびGENERATED ALWAYS識別列で定義されたのと同じテーブルに値を挿入すると、2つの識別列タイプは異なった動作を示します。GENERATED BY DEFAULTはINSERTリクエストで値が提供されない場合にのみ値を生成するため、挿入操作が同じでも結果が異なります。

新しく作成されたcolumn_1table_1が、GENERATED BY DEFAULTと定義された識別列であると想定します。次のINSERTリクエストは、挿入される行が列の値を指定していない場合にのみ、挿入される行のcolumn_1の番号を生成します。

     INSERT INTO table_1 (column_1, column_2, column_3)
     VALUES (111,111,111);

     INSERT INTO table_1 (column_1, column_2, column_2)
     VALUES (,222,222);

table_1のすべての行を選択して、挿入操作の結果を検査します。

     SELECT *
     FROM table_1;
     *** Query completed. 2 rows found. 3 columns returned.
     *** Total elapsed time was 1 second.
      column_1  column_2  column_3
     --------- --------- ---------
           111       111       111
             1       222       222