Я хотел бы синхронизировать локальную базу данных SQL Server 2012 с пакетом обновления 2 (SP2) на Azure с использованием SQL Data Sync. Когда я пытаюсь сделать синхронизацию, я получаю ошибку «неподдерживаемый тип данных» на одной из таблиц для столбца ID_Index:Неподдерживаемый тип данных при использовании SQL Data Sync to Azure
Управление Портал Azure не дает никаких дальнейших explanantion для ошибки. Проектирование таблицы в SQL Server Management Studio:
Сценарий создания таблицы:
CREATE TABLE [dbo].[FlightPlanData](
[ID] [uniqueidentifier] NOT NULL CONSTRAINT [DF_FlightPlanData_ID] DEFAULT (newid()),
[Airline_ID] [int] NOT NULL,
[FlightID_FK] [uniqueidentifier] NOT NULL,
[FlightPlanID] [int] NOT NULL,
[DateInserted] [datetime] NOT NULL CONSTRAINT [DF_FlightPlanData_DateInserted] DEFAULT (getdate()),
[Type] [varchar](20) NOT NULL CONSTRAINT [DF_FlightPlanData_Type] DEFAULT (''),
[FileName] [varchar](100) NOT NULL CONSTRAINT [DF_FlightPlanData_FileName] DEFAULT (''),
[ClientID_FK] [uniqueidentifier] NULL,
[ID_Index] [int] IDENTITY(1,1) NOT NULL,
CONSTRAINT [PK_FlightPlanData] PRIMARY KEY NONCLUSTERED ([ID] ASC))
CREATE CLUSTERED INDEX [IX_FlightPlanData] ON [dbo].[FlightPlanData]([ID_Index] ASC)
Таблица имеет GUID первичный ключ, но это не кластерный, вместо этого мы используем кластерный в index (ID_Index). Я не могу удалить столбец ID_Index, и я бы предпочел не делать его первичным ключом. Есть ли способ решить это? Я слышал, что Azure требует кластеризованный индекс для каждой таблицы, но он не должен быть первичным ключом. Так в чем проблема?
Догадайтесь, но возможно, что SQL Data Sync не поддерживает столбцы идентификации не первичного ключа. Что делать, если вы должны сделать ID_Index уникальным идентификатором вместо int? –