2011-12-12 60 views
1

我使用的是VS2010數據庫項目,並希望能夠負載:如何從Excel加載測試數據在VS2010的數據庫項目

  • 參考數據到任何實例(孤立開發,測試。 ..生產)

  • 僅將數據存入開發和測試數據庫。

據我瞭解,參考的數據是沒有問題的,我用腳本爲部署後腳本,將無條件運行。

對於測試數據,我知道我應該使用數據生成計劃;並且我可以使用數據綁定生成器從數據源(如Access,Excel或文本文件)加載數據。乍一看看起來像我需要的東西,但它使用絕對路徑來引用Excel文件。這似乎與源控制中的數據庫項目不兼容,可能由不同位置的工作空間不同的用戶訪問。

在這種情況下加載測試數據的「最佳做法」是什麼?我可以在連接字符串中使用相對路徑,並確保它始終在所有開發人員計算機上以相同方式解釋?

我曾期待找到一種類似於|DataDirectory| substitution string的語法,它允許相對於Database Project目錄指定一個路徑。

回答

0

在進一步閱讀,我認爲數據生成計劃是此方案的錯誤的工具。

我現在正在做的是用測試數據創建一個部署後腳本,然後通過使用SQL命令變量確保它有條件地執行。每個部署目標(獨立開發; UAT; PROD)都可以擁有自己的SQL命令變量文件(.sqlcmdvars),它將控制腳本是否運行。

E.g.加載測試數據只爲IsolatedDev數據庫,我可以使用下面的部署後腳本:

IF '$(DatabaseName)' = 'IsolatedDev' 
BEGIN 
    ... insert statements to add test data 
END 

,並確保測試數據不會被無意裝到生產數據庫中。

請隨時留下經驗和最佳實踐。

相關問題