Sql-Server
無法在 SSMS 中打開視圖的設計
當我嘗試打開視圖的設計時,我收到此錯誤消息(您可以在下面看到)。表不會發生這種情況,只有視圖才會發生,只有當我嘗試查看設計時,我才能從中檢索數據,例如使用選擇查詢。因為我們將數據庫移動到另一個虛擬伺服器,所以我收到了這個錯誤。我在具有不同 Windows(7 和 10)和 SSMS(2008、2010、2012、2014)版本的不同電腦上進行了嘗試。
標題:Microsoft SQL Server 管理工作室 ------------------------------ 嘗試讀取或寫入受保護的記憶體。這通常表明其他記憶體已損壞。(Microsoft.VisualStudio.OLE.Interop) ------------------------------ 鈕扣: 好的 ===================================
當我點擊詳細資訊時,我會看到以下資訊:
嘗試讀取或寫入受保護的記憶體。這通常表明其他記憶體已損壞。(Microsoft.VisualStudio.OLE.Interop) ------------------------------ 節目地點: 在 Microsoft.VisualStudio.OLE.Interop.IOleCommandTarget.QueryStatus(Guid & pguidCmdGroup,UInt32 cCmds,OLECMD [] prgCmds,IntPtr pCmdText) 在 Microsoft.VisualStudio.Platform.WindowManagement.DocumentObjectSite.QueryStatus(Guid & pguidCmdGroup,UInt32 cCmds,OLECMD [] prgCmds,IntPtr pCmdText) 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.QueryStatus(Guid & pguidCmdGroup,UInt32 cCmds,OLECMD [] prgCmds,IntPtr pCmdText) 在 Microsoft.Internal.VisualStudio.Shell.Interop.IVsTrackSelectionExPrivate.Register() 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.ConnectSelectionContext() 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.Activate() 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowManagerService.viewManager_ActiveViewChanged(對象發送者,ActiveViewChangedEventArgs e) 在 System.EventHandler`1.Invoke(對象發送者,TEventArgs e) 在 Microsoft.VisualStudio.PlatformUI.ExtensionMethods.RaiseEvent[TEventArgs](EventHandler`1 eventHandler,對像源,TEventArgs args) 在 Microsoft.VisualStudio.PlatformUI.Shell.ViewManager.SetActiveView(視圖視圖,ActivationType 類型) 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.ShowInternal (ShowFlags showFlags) 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.b__26() 在 Microsoft.VisualStudio.ErrorHandler.CallWithCOMConvention(Func`1 方法) 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.Show() 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.MarshalingWindowFrame.b__7a() 在 Microsoft.VisualStudio.Shell.ThreadHelper.Invoke[TResult](Func`1 方法) 在 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.MarshalingWindowFrame.Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame.Show() 在 Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VirtualProject.CreateDesigner(Urn origUrn,DocumentType editorType,DocumentOptions aeOptions,IManagedConnection con,字元串文件名) 在 Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VirtualProject.Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ISqlVirtualProject.CreateDesigner(Urn origUrn,DocumentType editorType,DocumentOptions aeOptions,IManagedConnection con,字元串文件名) 在 Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ISqlVirtualProject.CreateDesigner(Urn origUrn,DocumentType editorType,DocumentOptions aeOptions,IManagedConnection con,字元串文件名) 在 Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDocumentMenuItem.CreateDesignerWindow(IManagedConnection mc,DocumentOptions 選項) 在 Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDocumentMenuItem.InvokeDesigner(IManagedConnection 連接) 在 Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDocumentMenuItem.Invoke() 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ToolsMenuItemBase.MenuInvokedHandler(對象發送者,EventArgs 參數)
我們在 Windows 10 上安裝了 SSMS 2012 和 2014,一些較舊的電腦在 Windows 7 上安裝了 SSMS 2010 和 2012。所有電腦都安裝了 Visual Studio 2015。不幸的是,由於公司政策,我無法使用比 SSMS 2014 更新的版本。
我們使用 SQL Server 2016。(版本 13.0.4001.0;NT x64)
exec sp_helptext 'theView'
效果很好。
因為您使用的是比 SSMS 更新的 SQL Server 版本,所以我建議您安裝與 SQL Server 相同或更高版本的 SSMS。不能保證舊版本的 SSMS 可以在較新的 SQL Server 上執行,但相反的情況應該可以。SSMS 應該向後兼容,但不保證將來兼容。
我知道這個答案不是您想听到的,而是像我如何提出一個好問題?:
保持開放的心態
您的問題的答案可能並不總是您想要的答案,但這並不意味著它是錯誤的。一個決定性的答案並不總是可能的。如有疑問,請人們引用他們的來源,或解釋他們是如何/在哪裡學到的東西。即使我們不同意您的觀點,或者確切地告訴您您想听到的內容,請記住:我們只是想提供幫助。