2017-07-06 70 views
0

我一直在閱讀關於遷移腳本的Redgate文檔,我試圖將一個新列添加到具有另一個表中的外鍵的表中。Redgate遷移腳本沒有在部署上運行

這裏是我做了什麼:

  1. 添加了新列,使其爲空的,並創建了 關係提高到一個新的表,我已經犯下的變化。
  2. 然後,我將靜態數據添加到新表中,以便遷移可以運行 。我提交了這個靜態數據。然後添加一個空白遷移腳本 ,並將我在最後一個 提交中創建的列上的所有空值設置爲相關表中的一條記錄的標識。我 然後提交此更改。
  3. 然後我運行兩個提交到我的測試環境的部署,其中 記錄已經存在。

我遇到的問題是該列被創建,但腳本似乎不運行,因爲列值保持爲空。我已經驗證過,腳本應該實際更改列,因爲我試圖手動運行併成功執行。

我在使用這些腳本時做錯了什麼?謝謝。

回答

0

我正在創建導致SQL Compare的空白遷移腳本,將列設置爲非空。您必須在需要更改的模式更改上專門創建遷移腳本,否則SQL比較將覆蓋所有更改。