DEFAULT関数を使用した挿入 - Teradata Database - Teradata Vantage NewSQL Engine - DEFAULT関数を使用した挿入の使用上の注意

Teradata Vantage™ SQLデータ操作言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/fbo1512081269404.ditamap
dita:ditavalPath
ja-JP/fbo1512081269404.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage

DEFAULT関数を使用して行をテーブルに挿入する場合、以下のルールが適用されます。

  • DEFAULT関数は、リレーション列を名前で識別する単一の引数を取ります。この関数は、列の現行デフォルト値に等しい値と評価されます。列のデフォルト値が現行の組み込みシステム関数として指定される場合、DEFAULT関数は、リクエストの実行時にシステム変数の現行値と評価されます。

    この結果として、DEFAULT関数のデータ型は、デフォルトがヌルでない場合、デフォルトとして指定される定数またはビルトイン関数のデータ型になります。デフォルトがヌルの場合、DEFAULT関数のデータ型は、デフォルトのリクエスト対象である列または式のデータ型と同じになります。

  • DEFAULT関数には 2 つの形式があります。DEFAULT関数はDEFAULTまたはDEFAULT (column_name)sとして指定することができます。列名が指定されていない場合、システムは、コンテキストに基づいて列を派生させます。列のコンテキストを派生させることができない場合、リクエストはアボートし、エラーが要求元に戻されます。
  • 列名が指定されていないDEFAULT関数は式リストに指定できます。INSERTリクエストに列リストが指定されていると、DEFAULT関数の列名は、列リストの対応する列になります。リクエストに列リストがない場合、列名は、VALUESリストの位置から派生されます。
  • INSERTリクエストに列名がないDEFAULT関数は、式の一部とすることはできません。これはスタンドアロンの要素として指定する必要があります。この使用形式は、ANSIに準拠しています。
  • 列名が指定されているDEFAULT関数は式リストに指定できます。これは、ANSIに対するTeradataの拡張機能です。
  • 列名が指定されているDEFAULT関数は式の任意の場所に指定できます。これは、Teradataの拡張機能です。
  • 列にデフォルト値が明示的に関連付けられていない場合、DEFAULT関数はNULLと評価されます。

DEFAULT関数の詳細について、<Teradata Vantage™ SQL関数、式、および述部、B035-1145>を参照してください。