Teradata 内で、ALTER TABLE コマンドを実行して既存の列のデータ型を VARCHAR(10) から CHAR(10) に変更すると、指定された属性を変更できないことを示す 3558 エラーが表示されます。目的の目的を達成するためにこれをコーディングする別の方法はありますか、それともデータ型を変更するために列を削除して再作成する必要がありますか?
19040 次
1 に答える
4
内部ストレージが変更されたときにデータ型を変更することはできません。これは VARCHAR <-> CHAR の場合です。
ADD CHAR -> UPDATE CHAR from VARCHAR (巨大な一時ジャーナルが必要) -> DROP VARCHARの代わりに、新しいテーブルを作成することをお勧めします -> INSERT/SELECT (TJ なし) -> DROP/RENAME。
編集: Rob Paller が示唆したように、INSERT SELECT の代わりに MERGE INTO を使用すると、ソース テーブルのスプールが回避されます。
于 2013-08-14T21:45:37.927 に答える