亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

liquibase 中的動態占位符配置生成動態校驗和

liquibase 中的動態占位符配置生成動態校驗和

動漫人物 2024-01-28 17:23:06
我正在使用 spring、liquibase 和 hsql 數據庫。我正在為表創建一個序列,比如說示例表。該序列將從 liquibase 創建,如下所示<changeSet id="xx" author="yy" dbms="hsql"><preConditions onFail="MARK_RAN"><not><sequenceExists sequenceName="example_id_sequence"/></not></preConditions><createSequence sequenceName="example_id_sequence" startValue="${hsql.exampleSequenceCount}" incrementBy="1"/></changeSet> 正如您在這里注意到的,序列的 startValue 是使用 liquibase bean 的變更日志參數從外部 java 代碼獲取的。第一次啟動效果很好。在示例表中插入一些數據后,當我重新啟動時,startValue 現在將是表的 max Id+1 值,它會像要求一樣返回。因此校驗和發生變化并引發錯誤。我嘗試包括先決條件,但這也不起作用。有沒有像這樣的解決方法如果存在序列,則不檢查校驗和,也不創建新序列
查看完整描述

1 回答

?
慕哥6287543

TA貢獻1831條經驗 獲得超10個贊

作為解決方法,請嘗試添加:

<validCheckSum>your-check-sum</validCheckSum>

或者:

<validCheckSum>ANY</validCheckSum>

它應該使該changeSet的checkSum常量(或者在 的情況下不重要ANY),因此該changeSet將僅執行一次。



查看完整回答
反對 回復 2024-01-28
  • 1 回答
  • 0 關注
  • 225 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號