如何将序列改为" NOCACHE"在liquibase?

时间:2014-11-03 16:02:51

标签: database oracle oracle-sqldeveloper liquibase

我的oracle数据库中有一个序列,缓存大小为20。 我想将此属性更改为" NOCACHE"。但我必须通过liquibase来做到这一点。我怎样才能做到这一点?我做了这个chageset:

<changeSet author="MY Name" id="2.1">
        <preConditions onFail="MARK_RAN" onFailMessage="The sequence SEQUENCEONE does not exists in the database.">
            <sequenceExists sequenceName="SEQUENCEONE "/>            
        </preConditions>
        <alterSequence                
           NOCACHE
           sequenceName="SEQUENCEONE "
        />            
        <comment>Alter in sequence</comment>        
    </changeSet>

我告诉我这个错误:

属性名称&#34; NOCACHE&#34;与元素类型相关联&#34; alterSequence&#34;必须遵守  通过&#39; =&#39;字符。 - &GT; [帮助1]

2 个答案:

答案 0 :(得分:2)

Liquibase没有更改序列缓存行为的属性。似乎除非对Liquibase进行更改,否则您必须在自定义SQL标记中进行此更改。

答案 1 :(得分:2)

@ SteveDonie的答案很有效,但是您也可以将modifySql与createSequence标记一起使用,将NOCACHE添加到通常生成的内容中。