【问题标题】:Changing the sequence in Liquibase with oracle使用 oracle 更改 Liquibase 中的序列
【发布时间】:2020-07-30 15:35:30
【问题描述】:

我有一个表X 几年前在 Liquibase 中创建的,没有序列。最近,尝试通过以下步骤进行更正:

  • 使用startValue=2000 创建了一个序列;
  • 在 ID 列上使用该序列创建了一个新的临时表 (Y);
  • 将表 X 中的所有数据移到表 Y 中;
  • 删除表 X;
  • 将表 Y 重命名为 X;

现在这些更改已推送到 prod。他们要求我将 sequence 从 2000 年更改为 2050 年。

我之前从未使用过 Liquibase;我的想法是删除该序列并使用startValue=2050 创建一个新序列。

但我不确定是否有更好的方法。

感谢您的帮助!

【问题讨论】:

    标签: liquibase


    【解决方案1】:

    这种方法对我有用:

    <changeSet  author="ml"  id="20200730-sequence">  
        <dropSequence  sequenceName="seq_id"/>  
        <createSequence    
                sequenceName="seq_id"
                startValue="2050"
                incrementBy="1"  
                ordered="true"/> 
    </changeSet>
    

    【讨论】:

      猜你喜欢
      • 2017-07-29
      • 1970-01-01
      • 2016-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-31
      • 2013-10-15
      • 1970-01-01
      相关资源
      最近更新 更多