假设在v1中我有一张桌子
create table test1
{
col1 varchar2(10),
col2 varchar2(10),
col3 varchar2(10),
}
在版本v2中,要求将表添加到中间列col1_2
中,例如
create table test1
{
col1 varchar2(10),
col1_2 varchar2(30),
col2 varchar2(10),
col3 varchar2(10)
}
那么liquibase是否有能力添加重建表的生成表?
答案 0 :(得分:0)
否,Liquibase无法以一般方式执行此操作。您可以删除并重新创建表,但这可能不是您想要的。如果您想做这样的事情,您将需要做一个相当复杂的SQL更改。一种方法是使用所需顺序按列创建新表,然后将数据从旧表复制到新表,然后删除旧表,最后将新表重命名为正确的名称。
一种更简单的方法可能是使用视图。
通常,表中列的顺序不应被认为是重要的。