【问题标题】:dropping index in Azure SQL gives 'Cannot drop the index 'xyz', because it does not exist or you do not have permission'在 Azure SQL 中删除索引给出“无法删除索引 'xyz',因为它不存在或您没有权限”
【发布时间】:2015-05-04 07:04:19
【问题描述】:

我需要从 SQL Azure 中删除一些索引 - 我收到 无法删除索引“xyz”,因为它不存在或您没有权限

select * from sys.indexes 显示索引,所以我相信它存在

我是数据库管理员,通过 Visual Studio 发出命令

有什么想法吗?

【问题讨论】:

  • SQL Azure 不允许删除聚集索引,因此这可能是原因,尽管这通常会给出不同的错误消息。您可以发布您要发送的DROP INDEX 吗?
  • 您使用的是 V11 数据库吗?如果是这样,则该版本不支持堆,因此它限制您删除聚集索引。我强烈建议升级到 V12,因为这个版本确实支持堆。
  • 由于最近更新了此内容,SQL Azure 中不再存在 V11 服务器。现在只存在 V12 版本。该问题基于 V11 架构,当前 SQL Azure 中不存在此限制。

标签: sql azure azure-sql-database


【解决方案1】:

可能是语法,在Azure SQL中正确的方法是

DROP INDEX [index_name] on [table_name] 而不是DROP INDEX [table_name].[index_name]

Error dropping index on SQL Azure database: Incorrect syntax near the keyword 'ON' (user context = dbo)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-05
    • 2015-11-20
    相关资源
    最近更新 更多