簡體   English   中英

Spring Boot data.sql避免每次啟動時多次執行

[英]Spring boot data.sql avoid multiple execution on every startup

Spring boot提供了一個很棒的選項,可以在啟動時使用data.sql將初始數據加載到數據庫中。 問題是,我有一個表,其中的列是唯一的,並且spring嘗試在每次啟動時執行sql,並且如果已經存在數據則失敗。 現在的問題是,處理這種情況的正確方法是什么,有什么方法可以告訴spring什么時候執行和什么時候不執行data.sql文件。 謝謝

您有幾種選擇:

  • 使用spring.datasource.initialize=false禁用啟動時的數據庫初始化
  • 使用spring.datasource.continue-on-error=true關閉Spring Boot的快速失敗行為

第二種選擇是讓您的Spring Boot應用程序正常運行,方法是忽略腳本執行引起的任何異常。

Spring Boot文檔

如果以上兩個選項都不符合您的要求,如Darren Forsythe在評論中所述,請考慮使用數據遷移工具,例如Flyway或Liquibase。 Spring Boot為這兩種工具提供了強大的支持。 檢查這個出來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM