1

SQL 데이터 동기화를 사용하여 온 프레미스 SQL Server 2012 SP2 데이터베이스를 Azure에 동기화하려고합니다. 나는 내가 ID_Index 열의 테이블 중 하나에 "지원되지 않는 데이터 형식"오류 얻을 동기화를 할 때 는 :Azure에 SQL 데이터 동기화를 사용할 때 지원되지 않는 데이터 형식

푸른 관리 포털 오류에 대한 더 explanantion을 제공하지 않습니다. SQL Server 관리 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 기본 키를 가지고 있지만 클러스터 아니에요, 대신 우리가에서 클러스터 사용 색인 (ID_Index). ID_Index 열을 제거 할 수 없으며 기본 키가 아니기를 바랍니다. 이 문제를 해결할 방법이 있습니까? Azure는 각 테이블에 대해 클러스터형 인덱스가 필요하지만 기본 키일 필요는 없다고 들었습니다. 그럼 여기서 뭐가 문제 야?

+1

SQL 데이터 동기화가 비 기본 키 ID 열을 지원하지 않을 수도 있습니다. ID_Index를 int 대신 uniqueidentifier로 만들려면 어떻게해야할까요? –

답변

0

테이블에 기본 키가 아닌 ID 열을 포함 할 수 없습니다. 이는 SQL Data Sync의 일반적인 요구 사항 중 하나입니다. 자세한 내용은 this GitHub 설명서를 참조하십시오.