可憐我的C盤本來只有8.XG,所以不得不卸載掉它。
卸載掉本身沒啥問題,只是昨晚突然發現 Sql Server 2008 R2 Management Studio 突然不能新建數據庫關系圖了,一建立就會報“找不到指定的模塊(MS Visual Database Tools)”的錯誤:
為了這個錯誤我甚至認真評估了重新配置數據庫的可能性。無奈這個R2的SQL2008打過SP1了,無論是修復還是重裝都是很花時間的事情,所以不甘心,在Google上找了一圈。終於找到個類似的主題反應了這個問題。是位國際友人報告的,標題是“SQL Server 2008 R2 - "Specified Module cannot be Found. (MS Visual Database Tools)"”,其實是一樣的錯誤(他的是英文版……)。可惜這個主題中表示同樣遭遇這個問題的人雖然不少,但是他們終究沒找到解決方案。
根據他們的經驗,下面的方法已經確認是無效的:
重裝 SQL2008 (我想包括了修復)
重裝 .net framework 3.5
重裝VS2010和VS2010 SP1
他們並沒有討論出個所以然來。如果非說他們有進度的話,那就是其中的一個哥們兒選擇了『重裝系統』來一了百了……
作為一個Win7正式發布後就沒重裝過系統的人來說,這樣的解決方案確實有點兒……無法接受。
2.還是自己解決吧。
偉大的領袖毛主席說,『自己動手,豐衣足食』。
具體查找原因的過程略……其實就是用Process Monitor觀察創建關系圖時的加載操作,看看哪些是失敗的,說出來又是巴拉巴拉一堆流水賬,不說也罷。最終找到的原因是:『找不到 msvcr11.dll 』。
明眼人一看就知道這是 VS2011 中的附帶的VC運行時,但為什麼卸載VS2011後SQL Server 2008R2 還需要它,這個問題也許只有微軟能解釋了。(說不定是VS2011更新了SQL2008 R2也使用的共享組件?)
既然知道原因了,那就很簡單了。在VS2011 Developer Preview的安裝包中找到“packages\vcRuntimeMinimum_x86\vcRuntimeMinimum_x86.msi”安裝一下就行了。64位系統說不定把“packages\vcRuntimeMinimum_amd64\vcRuntimeMinimum_amd64.msi”也裝一下更好一點。這樣說來,回想起來我卸載VS2011的時候是把附帶的組件想當然地覺得也是不需要的所以給一並刪除了。看來刪除有風險刪除需謹慎啊,有些東西真的不是你想刪,想刪就能刪的。哎。