Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 在架构中的表上创建索引_Sql_Database_Sql Server 2005_Database Schema_Indexing - Fatal编程技术网

Sql 在架构中的表上创建索引

Sql 在架构中的表上创建索引,sql,database,sql-server-2005,database-schema,indexing,Sql,Database,Sql Server 2005,Database Schema,Indexing,我以“sa”身份登录,拥有完全的管理员权限,并且正在运行以下命令: CREATE NONCLUSTERED INDEX [IDX_EntityAuditId] ON [Maintenance.EntityAuditMessagesArchive] ([EntityAuditId] ASC) ON [PRIMARY] 以及获取错误: 找不到对象“Maintenance.EntityAuditMessagesArchive”,因为它不存在或您没有权限 该对象确实存在,因为我可以从中进行选择。此外

我以“sa”身份登录,拥有完全的管理员权限,并且正在运行以下命令:

CREATE NONCLUSTERED INDEX [IDX_EntityAuditId] ON [Maintenance.EntityAuditMessagesArchive] 
([EntityAuditId] ASC) ON [PRIMARY]
以及获取错误:

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

该对象确实存在,因为我可以从中进行选择。此外,如果该表不在架构中,则该命令可以工作。i、 e

CREATE NONCLUSTERED INDEX [IDX_EntityAuditId] ON [EntityAuditMessagesArchive] 
    ([EntityAuditId] ASC) ON [PRIMARY]
有效(当然,当我创建没有模式的表时)


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

您的名字中有一个
。我猜您需要将其更改为:

[维护].[EntityAuditMessagesArchive]


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

换句话说,您完全正确。谢谢你的帮助@brundlefly-很乐意帮忙。我自己也做过几次,当您更改SSMS生成的脚本并将括号放在错误的位置(或将内容插入SSMS生成的括号中)时。