【发布时间】:2020-06-19 09:35:30
【问题描述】:
我的数据库中有一个 Person 表。我正在使用 Oracle 数据库。我有一列 ADDRESS 具有 varchar2 数据类型。我想将此列的数据类型从 varchar2 更改为 clob。我正在通过 Liquibase 进行此更改。这是我的变更集。
<changeSet id="15" author="shivam">
<sql>
ALTER TABLE PERSON ADD ADDRESS_CLOB VARCHAR2(2040 CHAR);
ALTER TABLE PERSON MODIFY ADDRESS_CLOB LONG;
ALTER TABLE PERSON MODIFY ADDRESS_CLOB CLOB;
UPDATE PERSON SET ADDRESS_CLOB = ADDRESS;
ALTER TABLE PERSON DROP COLUMN ADDRESS;
</sql>
<rollback>
ALTER TABLE PERSON DROP COLUMN ADDRESS_CLOB;
</rollback>
</changeSet>
通过上述变更集,我将能够从 varchar2 转换为 clob。但正如您所见,我的最后一列名称是 ADDRESS_CLOB。但我的要求是最终列名应该是 ADDRESS 并且应该是 clob 数据类型。我该怎么做,请帮助我。
【问题讨论】:
标签: oracle liquibase liquibase-hibernate liquibase-sql liquibase-pro