2016-03-21 13 views
0

Teradataを初めて使用しています。 特定のプライマリインデックスを持つ約45kレコードのテーブルがあります。 このテーブルのプライマリインデックスを変更したいと思います。 誰かがplsを助けることができますか?Teradataでテーブルのプライマリインデックスを変更する

以下は私の現在のプライマリインデックスです。

PRIMARY INDEX IDX_NON_RTL_SALES_WIDE_01 (col1 ,Col2 ,Col3); 

私はcol3を削除し、他のいくつかの列を追加したいと考えています。

ありがとうございます

答えて

1

テーブルが空でない限り、TeradataのPIを変更することはできません。

データを揮発性または永続性のある別のテーブルにコピーする必要があります。一般的には

alter table <TableName> modify primary index Index_Name(col1, col2, ...); 
0

はあなたがTeradataの上のPIを変更しないでください。

次に、あなたのインデックスを変更することができます。新しいテーブルを作成して新しいPIを作成し、古いテーブルを削除することをお勧めします。

CREATE TABLE BLA_new 
    as BLA_old 
    with data 
PRIMARY INDEX (<<new PI -columns>>); 
DROP TABLE BLA_old; 
関連する問題