Sql server 包含在SQL Server 2008 Express的覆盖索引中不可用

Sql server 包含在SQL Server 2008 Express的覆盖索引中不可用,sql-server,sql-server-2008,indexing,ssms,Sql Server,Sql Server 2008,Indexing,Ssms,在MS SQL Server Manager Studio for 2008 Express中,在数据库关系图设计器的“索引/键”窗口中,“包含的列”字段始终为灰色 根据帮助,只要我没有创建聚集索引,这应该是可用的 此外,如果我运行一个查询来创建索引(运行良好),则创建的查询不会列出它所针对的表 我看不到微软说这项功能在Express版本中不可用的地方 有什么想法吗 进一步数据: 这是创建表的脚本: CREATE UNIQUE INDEX IX_SocialTypes_Cover ON Clie

在MS SQL Server Manager Studio for 2008 Express中,在数据库关系图设计器的“索引/键”窗口中,“包含的列”字段始终为灰色

根据帮助,只要我没有创建聚集索引,这应该是可用的

此外,如果我运行一个查询来创建索引(运行良好),则创建的查询不会列出它所针对的表

我看不到微软说这项功能在Express版本中不可用的地方

有什么想法吗

进一步数据:

这是创建表的脚本:

CREATE UNIQUE INDEX IX_SocialTypes_Cover ON ClientSocialTypes(ClientID, SocialTypeID, [Source]) INCLUDE (URLID)
以下是表gen脚本(缺少索引):


索引实际上可能是一个唯一的约束(使用CREATE/altertable),而不是使用createindex创建的索引。唯一约束不允许包含

这很令人困惑。。。为索引/键条目或表生成一个脚本,您可以进行确认

编辑:

  • 单独创建索引时,必须刷新对象资源管理器

  • 在不同的模式中是否有2个SocialType表?(例如
    dbo.SocialType
    [domain\myuser].SocialType
    )。如果不在DDL语句中指定模式,则可能发生这种情况


事实证明,在SQL Server的完整版本中,此选项也是灰色的。在SSMS中,使用对象资源管理器(而不是设计器)导航到{database_name}>Tables>{table_name}>索引以管理包含的索引。

有两个不同的索引对话框。一个古老的、可怕的、可怕的,还有一个新的(只是刚刚发现的)能让你改变这些事情的

旧的可怕的一个

  • 右键单击主表列表中的表
  • 单击“设计”
  • 右键单击列列表并选择“索引/键”
这不允许您更改包含的列

新的漂亮的

  • 展开主表列表中的表,以显示“列”、“键”、“约束”、“触发器”等文件夹
  • 展开
    索引
    文件夹
  • 右键单击
    索引
    文件夹以获取
    新索引
  • 右键单击现有索引,然后单击属性以编辑现有索引

这个新的对话框可以让你做更多的事情,我对微软让旧的保持活力以及我花了多长时间才发现它感到失望。

生成完整的表脚本,看看它说了什么。我只有一个这样的表,在dbo模式下。实际上,问题1是为什么设计器不启用此字段,所以我首先使用它来创建索引?第二个问题是为什么我在编写脚本后无法使用设计器查看它。1。因为它可能不是索引2。刷新对象资源管理器。有趣的是,对于新创建的表,我无法访问新的NICE。(“Microsoft SQL Server Management Studio 11.0.3153.0”)。
新建索引
选项变灰,现有索引的
属性
上下文菜单也变灰。还不确定原因。只有当您打开该表的“设计表”时,它才会变灰-您需要先关闭设计器,然后才能打开“新的漂亮表”。这两个选项都不适用于Azure SQL数据库BTW(自托管除外)
CREATE TABLE [dbo].[ClientSocialTypes](
    [SocialTypeID] [int] IDENTITY(1,1) NOT NULL,
    [ClientID] [int] NOT NULL,
    [SocialTypeClassID] [tinyint] NOT NULL,
    [Source] [nvarchar](50) NOT NULL,
    [TagCount] [int] NOT NULL,
    [URLID] [int] NULL,
 CONSTRAINT [PK_ClientSources] PRIMARY KEY CLUSTERED 
(
    [SocialTypeID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]    
GO

ALTER TABLE [dbo].[ClientSocialTypes]  WITH CHECK ADD  CONSTRAINT [FK_ClientSocialTypes_Clients] FOREIGN KEY([ClientID])
REFERENCES [dbo].[Clients] ([ClientID])
ON UPDATE CASCADE
ON DELETE CASCADE
GO

ALTER TABLE [dbo].[ClientSocialTypes] CHECK CONSTRAINT [FK_ClientSocialTypes_Clients]
GO

ALTER TABLE [dbo].[ClientSocialTypes]  WITH CHECK ADD  CONSTRAINT [FK_ClientSocialTypes_SocialTypeClasses] FOREIGN KEY([SocialTypeClassID])
REFERENCES [dbo].[SocialTypeClasses] ([SocialTypeClassID])
GO

ALTER TABLE [dbo].[ClientSocialTypes] CHECK CONSTRAINT [FK_ClientSocialTypes_SocialTypeClasses]
GO

ALTER TABLE [dbo].[ClientSocialTypes] ADD  CONSTRAINT [DF_ClientSocialTypes_SocialTypeClassID]  DEFAULT ((1)) FOR [SocialTypeClassID]
GO

ALTER TABLE [dbo].[ClientSocialTypes] ADD  CONSTRAINT [DF_ClientSocialTypes_TagCount]  DEFAULT ((0)) FOR [TagCount]
GO

ALTER TABLE [dbo].[ClientSocialTypes] ADD  CONSTRAINT [DF_ClientSocialTypes_HasTrackedURL]  DEFAULT ((0)) FOR [URLID]
GO