ALTER TABLEリクエストを使用せずに、テーブルのプライマリ インデックスまたはパーティションを再定義するには、列のデータ型を変更する手順を参照してください。次のいずれかの方法を参照してください。
方法1
- CREATE TABLE … AS構文を使用して、異なるプライマリ インデックスまたは基本AMPインデックス(またはプライマリ インデックスなし)で新たに定義したテーブルに、テーブルをコピーして取り込みます。CREATE TABLE (AS句)を参照してください。
- 古いテーブルの権限をカタログします。列のデータ型を変更する手順のステップ3を参照してください。
- 元のテーブルを削除します。DROP TABLEと<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
- 新しいテーブルの名前を変更します。<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
- 新しいテーブルの権限を付与します。<Teradata Vantage™ - SQLデータ制御言語、B035-1149>の「GRANT (SQL形式)」を参照してください。
方法2
- 新しいインデックスを指定する新しい名前で新しいテーブルを作成します。
- INSERT … SELECTリクエストを使用して、新しいテーブルにデータを挿入します。<Teradata Vantage™ - SQLデータ操作言語、B035-1146>を参照してください。
- 古いテーブルの権限をカタログします。列のデータ型を変更する手順のステップ3を参照してください。
- 元のテーブルを削除します。DROP TABLEと<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
- 新しいテーブルの名前を古いテーブルの名前に変更します。<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>の「RENAME MACRO」を参照してください。
- 新しいテーブルの権限を付与します。<Teradata Vantage™ - SQLデータ制御言語、B035-1149>の「GRANT (SQL形式)」を参照してください。