テーブルまたはグローバル一時テーブルへの1つ以上の列の追加、パーティション、制約、圧縮を含む属性およびオプションの追加または変更を行ないます。列の削除、結合インデックスの変更、テーブルの再検証を行なうこともできます。
- テーブルまたはグローバル一時テーブル定義の列に新しい属性を追加する。
- 新しい列のセットを既存のテーブルまたはグローバル一時テーブルの定義に追加する。
- 列のセットを列パーティション テーブルの既存の列パーティションに追加する。
- 列のセットを新しい列パーティションとして既存の列パーティション テーブルに追加する。
テーブルまたはグローバル一時テーブル定義から列を削除する。
すべてのコンポーネント列が削除されるときに、列パーティションを削除する。
FALLBACKオプションを追加または削除する。
JOURNALオプションを追加または変更する。
- 列レベルおよびテーブル レベルの制約を変更する。
- 参照制約を変更する。
- テーブルまたはグローバル一時テーブル定義のDATABLOCKSIZEまたはFREESPACEのパーセントを変更する。
- 永久 テーブル定義または永久ジャーナル テーブル定義のMERGEBLOCKRATIOを変更する。
- グローバル一時テーブルのLOGまたはON COMMITオプションを変更する。
- 列の名前を変更する。
- テーブルのプライマリ インデックスのプロパティを変更する。
- テーブルのパーティション プロパティを変更する(行パーティション テーブルのパーティション式の変更を含む)。
- 列パーティション テーブルと結合インデックスの列パーティション プロパティを変更する。
- テーブルのディスクI/O整合性オプションを変更する。
- テーブルの列の圧縮属性を変更する。
- テーブルのロード分離属性。
テーブルヘッダーを再生成し、任意指定で行パーティション テーブルの行のパーティションを妥当性検査および訂正します。
テンポラル テーブルおよびテンポラル構文について詳しくは、<Teradata Vantage™ - ANSIテンポラル テーブル サポート、B035-1186>および<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。
ANSI準拠
この文はANSI SQL:2011に準拠していますが、非ANSI Teradata拡張機能を含みます。
その他のSQL用語は、以下のような名前の、類似した非ANSI規格文をサポートしています。
必要な権限
テーブルを変更するには、そのテーブル、またはそのテーブルの格納先データベースに対するDROP TABLE権限が必要です。
ALTER TABLEを使用して行レベル セキュリティ列を追加または削除する場合は、DROP TABLE権限だけでなく、CONSTRAINT ASSIGNMENT権限も必要です。
- ALTER TABLE … ADD UNIQUE (column_list)
- ALTER TABLE … ADD PRIMARY KEY (column_list)
- ALTER TABLE MODIFY … WITH INSERT
- ALTER TABLE REVALIDATE PRIMARY INDEX… WITH INSERT
- 指定されたUDTに対するUDTUSAGE権限。
- SYSUDTLIBデータベースに対する次の権限のうち、最低1つ。
- UDTUSAGE
- UDTTYPE
- UDTMETHOD
行レベル セキュリティ制約列をテーブルに追加したり、行レベル セキュリティ制約列をテーブルから削除したりするには、CONSTRAINT ASSIGNMENT権限が必要です。
自動的に与えられる権限
- 制約に対するエラー テーブルでのDELETE
- 制約に対するエラー テーブルでのDROP TABLE
- 制約に対するエラー テーブルでのINSERT
- 制約に対するエラー テーブルでのSELECT
- 制約に対するエラー テーブルでのUPDATE
他のALTER TABLEオプションには、権限は自動的に与えられません。