在架构中创建表上的索引

时间:2011-04-12 15:56:18

标签: sql database sql-server-2005 database-schema indexing

我以'sa'身份登录,具有完全管理员权限,我正在运行以下命令:

CREATE NONCLUSTERED INDEX [IDX_EntityAuditId] ON [Maintenance.EntityAuditMessagesArchive] 
([EntityAuditId] ASC) ON [PRIMARY]

并收到错误:

  

找不到对象“Maintenance.EntityAuditMessagesArchive”,因为它不存在或您没有权限。

对象确实存在,因为我可以从中进行选择。此外,如果表不在架构中,则该命令有效。即。

CREATE NONCLUSTERED INDEX [IDX_EntityAuditId] ON [EntityAuditMessagesArchive] 
    ([EntityAuditId] ASC) ON [PRIMARY]

工作(当我创建没有架构的表时)。

因此,当表在维护模式中时,我无法创建索引。这是为什么?

1 个答案:

答案 0 :(得分:2)

您的名字中有.。我猜你需要把它改成:

[Maintenance].[EntityAuditMessagesArchive]

括号内的句点表示它是名称的一部分,而不是分隔符。