小编Col*_*ley的帖子

ALTER TABLE ... 从常规表切换到分区表失败

下面的代码执行以下操作:

  1. 在 C:\TEMP 中创建数据库 play_partition
  2. 创建两个相同的分区表 play_table 和 archive_play_table
  3. 将 play_table 分区 1 切换到 archive_play_table 分区 1
  4. 在与 play_table 分区 2 相同的文件组上创建一个与 play_table 具有相同结构的新未分区表 temp_table
  5. 将 play_table_partition 2 切换到 temp_table
  6. 尝试将 temp_table 切换回 play_table 分区 2 并失败

    消息 4982,级别 16,状态 1,第 64 行 ALTER TABLE SWITCH 语句失败。检查源表“play_partition.dbo.temp_table”的约束允许目标表“play_partition.dbo.play_table”上的分区 2 定义的范围不允许的值。

为什么会失败?

我使用的是 SQL Server 2014(企业版试用版)。

问候,

科林戴利

http://www.colindaley.com/translator

/* Playing with partitioned tables */

USE master;
GO

DROP DATABASE play_partition;
GO

CREATE DATABASE play_partition
    ON PRIMARY(
        NAME = play_partition
        , FILENAME …
Run Code Online (Sandbox Code Playgroud)

sql-server partitioning sql-server-2014

9
推荐指数
1
解决办法
2万
查看次数

标签 统计

partitioning ×1

sql-server ×1

sql-server-2014 ×1