是否可以将此SWITCH PARTITION控制选项与Azure SQL Server一起使用



我正在使用标准"预加载";分区模式:将数据加载到loading表的一个已过时的分区中,然后将该分区切换到live表中。

我找到了SWITCH命令的以下选项:

ALTER TABLE [myLoadingTable] SWITCH PARTITION @partNum TO [myLiveTable] PARTITION @partNum -- Move the New Data in.
WITH ( WAIT_AT_LOW_PRIORITY ( MAX_DURATION = 1 MINUTES, ABORT_AFTER_WAIT = BLOCKERS ))

这些选项似乎是有价值的定义(即使在正常操作中不需要它们(。

不幸的是,当我尝试运行它时,我得到了:

Sql错误编号:11423。

错误消息:用户无权使用ABORT_AFTER_WAIT=BLOCKERS选项。

进一步阅读确认这是合适的:(链接(

BLOCKERS终止当前阻止SWITCH或联机索引重建DDL操作的所有用户事务,以便该操作可以继续。

需要ALTER ANY CONNECTION权限。

但当我尝试GRANT相关用户时,我得到了一个错误:

GRANT ALTER ANY CONNECTION TO [myAdfUser]

此版本的SQL server不支持安全类"server"。

我正在使用(AFAIK(一个普通的Azure SQL Server数据库。


对此有什么解决办法吗还是我无法在此数据库上使用这些选项?

看起来问题已经被@Larnu的评论解决了,只需将其添加为答案即可结束问题。

如果您正在使用Azure SQL数据库,那么错误告诉您的是真的。Azure SQL数据库是所谓的部分包含数据库;诸如USER对象有自己的Password和服务器上的LOGIN对象之类的对象不用于连接。CONNECTION权限是服务器级别的权限,因此在Azure SQL数据库中不受支持。

相关内容

  • 没有找到相关文章

最新更新