項目の型をVARCHAR2からCLOBに変更する方法
単純に、
ALTER TABLE SAMPLE_TBL MODIFY column_name CLOB;
と実行すると、
ORA-22858: データ型の変更が無効です。
が発生。VARCHAR2からCLOBへの変更は素直にできないようですね。
なので、以下のPL/SQLを実行することで変更できました。
もっとシンプルに移行できるといいんですけれど…。
ALTER TABLE SAMPLE_TBL RENAME COLUMN column to column_old; ALTER TABLE SAMPLE_TBL ADD column CLOB; DECLARE CURSOR cu is SELECT * FROM SAMPLE_TBL; BEGIN FOR cu_rec IN cu LOOP UPDATE SAMPLE_TBL SET column = cu_rec.column_old WHERE ID = cu_rec.ID; END LOOP; END; / ALTER TABLE SAMPLE_TBL DROP (column_old);