AZURE SQL TRUNCATE TABLE PARTITIONS

时间:2015-04-01 09:28:08

标签: tsql azure azure-sql-database truncate database-partitioning

我试图

TRUNCATE TABLE PartitionTable1 WITH (PARTITIONS (2, 4, 6 TO 8));

该语法与MSDN here

中的语法完全相同

在VS 2012中使用最新的SSDT和Target平台:“Microsoft Azure SQL Database V12”我收到此错误:

  

“SQL46010:语法不正确(。”及其之间的标记括号   “WITH(PARTITIONS”

我在AZURE Management Portal - SQL数据库中遇到了同样的错误。

在Microsoft SQL Server Management Studio中,我收到以下错误消息:

  

“'''附近的语法不正确。”

任何想法都会受到赞赏......

1 个答案:

答案 0 :(得分:3)

免责声明:我在SQL Server工具团队工作。

这里有两个独立的问题,一个在SSDT,另一个与SSMS失败有关。

  • 对于SSMS失败,问题是您使用的是Azure v1服务器/数据库,并且V1 DB不支持此语法。尝试升级服务器或针对不同的服务器运行以验证它是否按预期工作。有关于升级或创建Azure V12数据库的信息here
  • 主要的SSDT错误是因为此语法是Azure V12的新增功能(目前在任何其他SQL Server版本中都不可用)。 SSDT使用名为SQLDOM的组件来解析脚本,当前版本仍使用此组件的SQL Server 2014 RTM版本。这将在即将发布的预览版本中修复,该版本将支持此类新语法。不幸的是,在此之前,这是一个会导致此语句在项目系统中失败的问题。解决方法是在SSDT更新之前避免使用新语法。