17.00 - 17.05 - ALTER TABLEリクエストを使用しないプライマリ インデックス、基本AMPインデックス、またはパーティションの再定義 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Release Date
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1184-170K-JPN
Language
日本語 (日本)

ALTER TABLEリクエストを使用せずに、テーブルのプライマリ インデックスまたはパーティションを再定義するには、列のデータ型を変更する手順を参照してください。次のいずれかの方法を参照してください。

方法1

  1. CREATE TABLE … AS構文を使用して、異なるプライマリ インデックスまたは基本AMPインデックス(またはプライマリ インデックスなし)で新たに定義したテーブルに、テーブルをコピーして取り込みます。CREATE TABLE (AS句)を参照してください。
  2. 古いテーブルの権限をカタログします。列のデータ型を変更する手順のステップ3を参照してください。
  3. 元のテーブルを削除します。DROP TABLEと<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
  4. 新しいテーブルの名前を変更します。<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
  5. 新しいテーブルの権限を付与します。<Teradata Vantage™ - SQLデータ制御言語、B035-1149>の「GRANT (SQL形式)」を参照してください。

方法2

  1. 新しいインデックスを指定する新しい名前で新しいテーブルを作成します。
  2. INSERT … SELECTリクエストを使用して、新しいテーブルにデータを挿入します。<Teradata Vantage™ - SQLデータ操作言語、B035-1146>を参照してください。
  3. 古いテーブルの権限をカタログします。列のデータ型を変更する手順のステップ3を参照してください。
  4. 元のテーブルを削除します。DROP TABLEと<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
  5. 新しいテーブルの名前を古いテーブルの名前に変更します。<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>の「RENAME MACRO」を参照してください。
  6. 新しいテーブルの権限を付与します。<Teradata Vantage™ - SQLデータ制御言語、B035-1149>の「GRANT (SQL形式)」を参照してください。