Oracleでは、次のことができます。
Alter table table_name
modify column_name datatype;
これはredshiftデータベースで可能ですか?
AWS Redshiftではnowを変更できますVARCHAR列のみですが、次の条件が当てはまります。
最近AWSはvarchar列サイズを増やすためのサポートを追加しました、
VARCHAR列の変更ストレージを節約するために、現在のデータ要件に必要な最小サイズのVARCHAR列を含むテーブルを最初に定義できます。後で長い文字列に対応する必要がある場合は、テーブルを変更して列のサイズを増やすことができます。既存のデータを保護するために、列のサイズを小さくすることはできません。
次の例では、EVENTNAME列のサイズをVARCHAR(300)に変更します。
alter table event alter column eventname type varchar(300);
次のコマンドは、EVENTNAME列のサイズを小さくしようとするため失敗します。
alter table event alter column eventname type varchar(100);
Redshiftデータベーステーブルの列サイズ/タイプの増加
いいえ、テーブルを再作成せずにRedshiftの列サイズを増やすことはできません。
ただし、列がテーブルの最後の列である場合は、必要な変更を加えた新しい列を追加してデータを移動し、次のように古い列を削除できます。
ALTER TABLE TEST ADD COLUMN COLUMN_NEW VARCHAR(100);
UPDATE TEST SET COLUMN_NEW = COLUMN_OLD;
ALTER TABLE TEST DROP COLUMN COLUMN_OLD;
ALTER TABLE TEST RENAME COLUMN COLUMN_NEW TO COLUMN_OLD;