使用Visual Studio佈署DB,自動化填入資料

在一些實際案例上,往往佈署資料庫後,無論是要進行資料庫測試,或是要在資料表放入一些初始設定值或是初始化資料,就是先準備初始化資料的Script,等資料庫建立完畢後,再去執行這些Script放入資料,不過,若是透過透過Visual Studio資料庫專案,則可以將這部分一併做到自動化,也就是說當資料庫建立完成後,資料也一併填入資料表,這樣不僅可以在開發階段去定義要填入的資料,也可以避免資料表有異動時候,要填入資料的script沒有做變更,造成資料無法填入。

一開始做法跟開始進行資料庫程式的版控和佈署這篇教學是相同的,後面,我們只要在做放入要自動化SQL Script就可以

  1. 首先我們要加入指令碼,通常這指令碼就是SQL Script

  2. 選擇佈署後指令碼,其目的在於是當資料庫佈署完畢後才會執行,若是有些東西需要在佈署前先做,就選擇預先佈署指令碼就可以

  3. 新增完畢後的檔案內容如下,這邊只要去填入自己要塞入DB資料的Script就可以。

以上幾個簡單步驟就可以做到自動化填入資料囉。不過,運用上還需要一些小技巧,以目前手邊案例來說,因為資料有時候,有先後順序且在團隊分工上,要做到分工去完成一些填資料動作,若是都在一個檔案中去實作,要管理起來是非常麻煩的。所以,運用上我會把這檔案當作運作塞資料的主流程,然後在這檔案中用SQLCMD去執行每個要Insert Data的 Script檔案

其他的.sql檔案,就可以用一般的SQL Script去產生出來

然後再去定義我們要塞入資料的順序,甚至在測試時候,我們也可以放入一些測試資料的SQL Script,等正式上線再移除這些測試的Script,這樣在管理上就方便多了完成之後,進行發布就可以了。若是你的資料有相依或是唯一性,在重複佈署時候可能會有發生資料問題,只要在佈署時候選擇重新建立資料庫就可以。不過,這部分要仔細確認後再作業避免後悔