簡體   English   中英

Visual Studio 2017 中的 SQL Server 比較架構

[英]SQL Server Compare Schema in Visual Studio 2017

我正在嘗試比較同一服務器上兩個數據庫的模式。

這兩個數據庫被命名為benchmarkdbbenchmarkdb_dev

在 Visual Studio 2017 中,我轉到工具 > SQL Server > 新架構比較...

從標有“選擇源”和“選擇目標”(如下圖所示)的兩個下拉菜單中,我想選擇benchmarkdb作為源和bencmarkdb_dev作為目標。

在此處輸入圖片說明

單擊選擇一個源后,彈出“選擇源架構”,我單擊“選擇連接...”按鈕,這帶來了另一個彈出窗口。 最新的彈出窗口(下圖中右側的那個)顯示了我試圖比較的兩個數據庫。

在此處輸入圖片說明

但是,在我為源或目標選擇一個后,所有彈出窗口都會關閉,但沒有填充“選擇源...”或“選擇目標...”下拉菜單。 事實上,它只是回到看起來像第一張照片。

是否有解決方案,以便我可以比較數據庫之間的模式?

更新:

我已經在 VS 2012、2015 和 2017 上嘗試過這個。所有人都面臨着同樣的問題。 VS軟件和系統軟件都是最新的。 以下是我正在使用的一些軟件版本,如果有幫助的話。

Windows 7 企業版 SP1

與 2012、2015 和 2017 年的對比

SQL Server 2014

.NET 框架 v4.7.02053

好的,所以我設法修復它。 首先,您需要從 Microsoft 頁面安裝 SSDT。 只是谷歌它。 確保在啟動安裝程序(在修改時)時在各個組件中也列出了它。 只需要 SQL Server 數據庫(我可以從 Integration Services 和另外 3 個中進行選擇)。

接下來,您需要在模式比較模式中“從歷史記錄中刪除連接”以進行連接選擇。

我此時關閉了 VS,以確保連接不再存在於歷史中。 下次啟動VS,應該不會有歷史上有問題的連接。

重新創建連接(我選中了“記住密碼”),瞧。 模式比較有效。

不太確定,但在絕望中我還安裝了“Redgate ReadyRoll Core”、“Redgate SQL Prompt Core”和“Redgate SQL Search”。 我不認為這很重要,但如果一切都失敗了......

編輯:這適用於 2 台機器,它似乎沒有連接到 VS 版本。

我有同樣的問題,但我不知道我是否有相同的根本原因。

在將我的數據庫從 Window Server 上的 SQL Server 更改為 Linux 容器上的 SQL Server 后,我的問題就開始了。 模式比較似乎接受我的選擇,但數據庫字段實際上永遠不會填充,我無法執行比較。

為了解決這個問題,我必須做兩件事。

  1. 更新 Visual Studio(使用 Visual Studio 中的標准更新程序)。
  2. 將適用於 Visual Studio 的 SQL Server 開發工具 (SSDT) 加載項更新為支持 Linux 上的 SQL Server 的預覽版。 在此處下載該下載。

兩個更新都到位后,我可以選擇數據庫並在我的項目和 Linux 上的 SQL Server 之間執行架構比較,就像我在 Windows 上對 SQL Server 所做的一樣。

如果運行本地數據庫,請檢查您使用的 SQL Management Studio 版本

我在安裝了 SQL Server 2017 的情況下運行 Visual Studio Pro 2017 和 SQL management studio v18.6 時遇到了同樣的問題。 我嘗試了上述所有解決方案,但沒有運氣即使回到 Visual Studio 2015 也不適合我。 有效的是改回 SQL Management Studio v17.9.1

沒有問題了。 我可能會嘗試再次將 Visual Studio 升級到 2017,看看現在是否有效

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM