更新「資料庫遷移(Migration)介紹與使用方式」
@@ -1 +1,27 @@
|
|||||||
歡迎使用 Wiki!
|
## 前言
|
||||||
|
|
||||||
|
本專案使用Flyway作為Database Migration的工具,Migration可以幫助我們在多人協同開發時確保資料庫Schema的一致性。
|
||||||
|
|
||||||
|
每當我們要讓資料庫異動共用資料(如User的角色role or 權限grant)或結構(增刪改DB Schema)時,就要寫一個migration的sql file來讓其他開發人員能同步此次修改
|
||||||
|
|
||||||
|
## Migration命名規範
|
||||||
|
版本號結構為: `Va.b.c.d__{description}.sql` (有兩個'_')
|
||||||
|
|
||||||
|
以目前`/build.gradle`中,`allproject` 的 `version` 為基礎版本號(a.b.c)
|
||||||
|
|
||||||
|
後面一位數則往上遞增
|
||||||
|
|
||||||
|
假設專案為以下結構
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
- 若目前基礎版本號碼為 `0.0.1`
|
||||||
|
|
||||||
|
- 可以知道目前該基礎版本的migration已經有一個migration, 若要新增新的migration,則尾數向上+1,即命名為 `0.0.1.2__xxx.sql`
|
||||||
|
|
||||||
|
- 若目前基礎版本號碼為 `0.0.2`
|
||||||
|
|
||||||
|
- 可以知道目前沒有該基礎版本的migration, 若要新增新的migration,則命名為 `0.0.2.1__xxx.sql`
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user