Я пытаюсь создать раздел с существующей таблицей графиков SQL Server (узел).Таблица очень большая и занимает много времени для удалений и т. Д., Поэтому мы надеемся использовать разбиение для повышения производительности.
Однако, когда я добавляю раздел и пытаюсь ПЕРЕКЛЮЧИТЬ данные.Это происходит со следующей ошибкой:
Сообщение 7733, Уровень 16, Состояние 4, Строка 1 Оператор «ALTER TABLE SWITCH» не выполнен.Таблица tempdatabase.dbo.graphtable секционируется, а индекс 'GRAPH_UNIQUE_INDEX_xxxxxxxxx' не секционируется.
Поскольку индекс GRAPH_UNIQUE_INDEX_xxxxxxxxx создается автоматически, он не может добавить ключ секционирования.
CREATE PARTITION FUNCTION f_partfunction (INT) AS RANGE LEFT
FOR VALUES (1,100,200,300)
GO
-- Create the partition scheme
CREATE PARTITION SCHEME s_partscheme
AS PARTITION f_partfunction
ALL TO ([PRIMARY]);
GO
CREATE TABLE [dbo].[graphtable](
PartitionKey INT,
ID INT,
EName varchar(100))
AS NODE ON s_partscheme (PartitionKey)
go
CREATE TABLE [dbo].[graphtable_test](
PartitionKey INT,
ID INT,
EName varchar(100))
go
--Failing Code
ALTER TABLE [dbo].[graphtable] SWITCH PARTITION 3 TO [dbo].[graphtable_test]