回答
獲取諸如Red Gate的SQL Compare之類的工具。
您需要爲此付費,但它通過節省時間爲自己付出代價。
如果您有緊急需求,可以試用。
我不建議你這樣做,如果你能避免它。
如果你只是想比較兩個SQL Server數據庫,我推薦一個低成本的替代方案http://cdttools.com/sql-diff-erence/。 (警告:我寫的)。
但是,對於你所指的,我推薦一種不同的方法。您應該已經知道已經發貨的產品的各種模式的不同版本。因此,根據將每個腳本完全升級到最新版本來構建更改腳本。這樣你的安裝程序只需要檢測一個版本號並根據它選擇它的sql操作。
如果您確實真的想在安裝程序期間進行SQL比較,那麼yoo可能需要查看屬於SQL Server功能部件包的SMO(共享管理對象)。但是,在使用它們之前,您很可能必須安裝這些軟件。
然後你可以用它來生成每個SQL對象的腳本,做在你安裝的比較。不過,我真的不建議這樣做。
它會告訴你它們是否存在,並允許您生成「更改」或「創建」腳本版本。或者,您可以直接轉到INFORMATION_SCHEMA數據庫系統對象,這將允許您直接查詢對象是否存在。
在Visual Studio 2012,轉到SQL(菜單) - >架構比較。點擊左側的選擇源,然後選擇開發數據庫。選擇右側的生產數據庫。
然後點擊生成腳本圖標(更新圖標旁邊,它看起來或多或少像一個音樂圖標)。這將生成更新腳本。您也可以取消您不希望包含在腳本中的任何更改。它是...'免費',如果你碰巧擁有Visual Studio 2012
你可以比較SQL Server 2008中的模式和任何新的SQL Server與ApexSQL Diff,它有免費的社區版。
它具有用戶友好的用戶界面,您可以輕鬆選擇數據庫(或其他數據源作爲備份,源控制項目,腳本文件夾)比較它們,獲得不同的結果並從源數據庫同步到目標數據庫。
如果你只是想比較對象,只看到分歧,建立一個合併的腳本,你可以檢查出的免費工具 - ApexSQL Compare。
還有一個工具,可以做到這一點,你想要的是一份工作dbForge Schema Compare
- 1. SQL Server 2008:如何比較XML?
- 2. 在SQL Server 2008中比較時間
- 3. 模式在SQL Server 2008
- 4. SQL Server CE模式比較工具
- 5. SQL Server 2008中的時序比較
- 6. SQL Server 2008中的字符串比較
- 7. SQL Server 2008中的NULL比較
- 8. SQL Server 2008和Unicode字符比較
- 9. SQL Server 2008中的日期比較
- 10. 如何在SQL Server 2008中比較日期
- 11. 如何比較/驗證sql模式
- 12. 如何比較SQL Server 2008中的兩行?
- 13. 如何從SQL Server Windows模式更改爲混合模式(SQL Server 2008)?
- 14. 最簡單的方法來比較SQL Server 2008中的兩個表模式?
- 15. 在SQL Server 2008/2012中使用模式
- 16. 如何比較SQL Server中的幾何?
- 17. 在還原SQL Server數據庫之前比較模式
- 18. 有比較字符串,如果它是SQL Server 2008 NULL
- 19. 如何在SQL Server中比較24小時格式的時間
- 20. 比較NVarchar字段在SQL Server 2008 R2中
- 21. 不正確的日期比較結果在SQL Server 2008 R2
- 22. SQL Server:如何比較兩個表
- 23. 如何比較SQL Server中的兩行
- 24. 如何比較SQL Server 2005中的DTS
- 25. 如何比較SQL Server中的日期?
- 26. 如何在SQL Server 2008
- 27. 如何在SQL Server 2005/2008
- 28. 格式SYSDATETIMEOFFSET在SQL Server 2008
- 29. 如何在SQL Server 2008的設計模式中修改表格?
- 30. 如何在sql server 2008中比較兩個表中的每一行數據
+1不能說的紅門工具不夠好東西 - 他們是一個**必須**在任何嚴重的SQL服務器開發人員的工具箱! – 2011-04-04 13:54:46
只需要確認,該工具是否可以與安裝程序一起使用?我的意思是當我在當時使用安裝程序在客戶端機器上執行sql對象時,我想要比較sql以檢查現有版本。 – 2011-04-05 04:54:41
如果您想將SQL Compare的邏輯添加到您自己的代碼中,則需要http://www.red-gate.com/products/sql-development/sql-comparison-sdk/ – 2011-04-06 16:18:31