0

这是网络的场景。主服务器/实例使用 SQL 2012,我想使用 SQL 2008 连接到数据库。我可以登录,运行查询,但问题是我无法打开任何对话框/窗口,如属性和附加数据库。

这是错误:

标题:Microsoft SQL Server 管理工作室

无法显示请求的对话框。


附加信息:

无法显示请求的对话框。(SqlMgmt)


指数数组的边界之外。(Microsoft.SqlServer.Smo)


节目地点:

在 Microsoft.SqlServer.Management.SqlMgmt.DefaultLaunchFormHostedControlAllocator.AllocateDialog(XmlDocument 初始化Xml,IServiceProvider dialogServiceProvider,CDataContainer dc)在 Microsoft.SqlServer.Management.SqlMgmt.DefaultLaunchFormHostedControlAllocator.Microsoft.SqlServer.Management.SqlMgmt.ILaunchFormHostedControlAllocator.CreateDialog(XmlDocument 初始化Xml,IServiceProvider dialogServiceProvider ) 在 Microsoft.SqlServer.Management 的 Microsoft.SqlServer.Management.SqlMgmt.LaunchForm..ctor(XmlDocument doc, IServiceProvider 提供程序) 的 Microsoft.SqlServer.Management.SqlMgmt.LaunchForm.InitializeForm(XmlDocument doc, IServiceProvider 提供程序, ISqlControlCollection 控件)。 UI.VSIntegration.ObjectExplorer.ToolMenuItemHelper.OnCreateAndShowForm(IServiceProvider sp, XmlDocument doc) 在 Microsoft.SqlServer。Management.SqlMgmt.RunningFormsTable.RunningFormsTableImpl.ThreadStarter.StartThread()

====================================

指数数组的边界之外。(Microsoft.SqlServer.Smo)


节目地点:

在 Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetDbComparer(Boolean inServer) 在 Microsoft.SqlServer.Management.Smo.SqlSmoObject.InitializeStringComparer() 在 Microsoft.SqlServer.Management.Smo.SqlPropertyMetadataProvider.PropertyNameToIDLookupWithException(String propertyName, PropertyAccessPurpose pap) 在 Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetDbComparer(Boolean inServer) 在Microsoft.SqlServer.Management.Smo.AbstractCollectionBase.get_StringComparer() 在 Microsoft.SqlServer.Management.Smo.SimpleObjectCollectionBase.InitInnerCollection() 在 Microsoft.SqlServer.Management.Smo.SmoCollectionBase.get_InternalStorage() 在 Microsoft.SqlServer.Management.Smo。 SmoCollectionBase.GetObjectByKey(ObjectKeyBase key) 在 Microsoft.SqlServer.Management.Smo.LoginCollection.get_Item(String name) 在 Microsoft.SqlServer.Management.SqlManagerUI.CreateLogin..ctor(CDataContainer 上下文)

希望得到您的帮助!谢谢

4

1 回答 1

1

那是对的。您可以从 SQL Server Management Studio 2008 连接到 SQL Server 2012 实例,但您的选择将非常有限 - 基本上是编写查询。您不能使用大多数 SSMS 功能。

您在这里有两个选择:

A - 使用查询附加数据库。MSDN 链接和示例:

EXEC sp_attach_db @dbname = N'DatabaseName', 
    @filename1 = N'D:\SQL\Data\DatabaseName.mdf', 
    @filename2 = N'E:\SQL\Log\DatabaseName.ldf';

B - 安装SQL Server Management Studio 2012。免费提供Express版,无需安装数据库引擎,只需安装SSMS即可。

编辑:可能有第三种选择。我不能保证,但是将最新的 SP 和更新应用到您的 2008,可能会使其与具有完整功能的 2012 实例一起使用。

尽管如此,我还是建议安装 SSMS 2012 来使用。它适用于较旧的实例。

于 2013-07-29T08:38:32.840 回答