Dot-Net
如何跨多個開發人員管理和擷取數據庫更改?
我們有三位開發人員和一位測試人員,他們都在同一個數據庫上工作。我們經常更改數據庫的架構,每次我們這樣做都會對其他人產生頭痛的連鎖反應。
是否有針對 MS SQL Server 2008 的面向 .NET 的開發的良好實踐來管理這個?我正在考慮類似於 Rails Migrations 的東西,每個開發人員和測試人員都有自己的本地數據庫。還是那是矯枉過正?擁有單獨的測試和開發數據庫至少會很好,但目前手動保持兩個數據庫同步可能比我們目前的困境更糟糕。
LiquiBase看起來很有前途,有人在類似的環境中成功使用過它嗎?還是有更好的方法?
如果這很重要,我們正在使用 SQL Server 2008、VS 2008 和 .NET 3.5。
我們有腳本可以從頭開始生成數據庫,這就是原始碼控制中的內容。每個開發人員(其中 20 人)都使用腳本在他們的工作站上生成 2 個數據庫。一種用於“工作”——使用其中的樣本數據進行手動測試(有填充樣本數據的腳本)。另一個數據庫是空的,用於單元測試(打開事務 - 進行單元測試 - 回滾)。
在多開發人員環境中必須進行單元測試。此外,我們總是建構“舊”數據庫並對其應用架構更改。每個開發人員都在通過創建升級過程來更改模式(這就是我們同時準備好重建和升級的方式)。
對於性能測試,我們有“載入器”——C# 程式碼來模擬使用者並在一夜之間在開發人員工作站上填充數百萬條記錄。