當在Visual Studio中使用SQL Server數據庫項目時,如果數據庫中有超過1000個存儲過程,那麼當您導入它時,Visual Studio會將這些過程分成不同的目錄。SQL Server數據庫項目沒有正確處理新的腳本文件創建
當您嘗試通過「Schema Compare」函數將任何新的存儲過程同步到項目中後,Visual Studio會忽略此分割文件夾結構並將所有新腳本直接放入「存儲過程」文件夾中。這意味着腳本化的新存儲過程不適合現有結構,這迫使用戶要麼使用此分離結構,要麼手動更新項目引用並將文件複製回Visual Studio創建的初始結構。
步驟
- 創建一個新的SQL項目。
- 右鍵單擊解決方案資源管理器中的項目>選擇「導入」>「數據庫」。
- 將項目綁定到SQL2008數據庫,該數據庫擁有1000多個存儲的 過程。爲「每個文件夾的最大文件數」選擇1000。
- 允許VS編寫所有存儲過程的腳本。它會自動將 分成1000個批次,並根據需要爲每個批次創建一個新文件夾'Proc1','Proc2' 。
- 右鍵單擊SQL項目>選擇「Schema Compare」,打開一個新的比較。
- 通過比較SQL項目和您的 原始數據庫,驗證數據庫是否正確同步。應該沒有待處理的更改。
- 在已同步的數據庫中創建新的存儲過程。
- 再次運行比較,現在應該在'Add'類型下顯示新的存儲過程 。
- 單擊「更新」並允許VS爲新過程創建腳本。
- 不是將新腳本放在原始的1000分隔文件夾結構中,而是直接將新腳本放置在「存儲過程」文件夾中。