1
votes

I have a table in SQL Azure and I am trying to create an External Table In Azure Data Lake Analytics that points to it

I created a credential and data source and I can confirm that they work because I can view other external tables. But when I try to preview this specific table I get the following errors:

Failed to connect to data source: 'MYDATASOURCE', with error(s): 'Incorrect syntax near the keyword 'SELECT'.
Incorrect syntax near ')'.'
CQO: Internal Error - Optimizer internal error.  Assert: csExtRowsetInfoNew != nullptr in managed\scopecqo.cpp:2235

Any idea what could be causing this issue? Is it related to the table schema?

SQL Azure Table Schema:

[rel].[TABLE1NAME](
[FSCServiceRequestId] [int] IDENTITY(1,1) NOT NULL,
[ServiceRequestCRMId] [uniqueidentifier] NOT NULL,
[TicketNumberTitle] [nvarchar](100) NOT NULL,
[ProblemDescription] [nvarchar](max) NULL,
[FSCServiceRequestStatusId] [int] NOT NULL,
[FSCServiceRequestPriorityId] [int] NOT NULL,
[PriorityOverrideReason] [nvarchar](1000) NULL,
[RequestorPhoneNumber] [nvarchar](100) NULL,
[FSCProblemRoomNumber] [varchar](200) NULL,
[BuildingId] [int] NULL,
[FSCProblemClassId] [int] NOT NULL,
[FSCProblemTypeId] [int] NOT NULL,
[ReclassificationReason] [nvarchar](100) NULL,
[RequestCancellationReason] [nvarchar](2000) NULL,
[IsCancelledForReclassification] [bit] NULL,
[IsSurveyServiceRequest] [bit] NULL,
[ProblemOccurredUTCDate] [datetime] NULL,
[ProblemOccurredUTCYMD] [int] NULL,
[ProblemOccurredInBuildingTimeZoneDate] [datetime] NULL,
[CreationUTCDate] [datetime] NOT NULL,
[CreationUTCYMD] [int] NOT NULL,
[SubmittedUTCDate] [datetime] NULL,
[SubmittedInBuildingTimeZoneDate] [datetime] NULL,
[DueUTCDate] [datetime] NULL,
[DueUTCYMD] [int] NULL,
[DueInBuildingTimeZoneDate] [datetime] NULL,
[RequestedFutureDueUTCDate] [datetime] NULL,
[ProviderAdjustedDueInBuildingTimeZoneDate] [datetime] NULL,
[ProviderAdjustedDueInBuildingTimeZoneYMD] [int] NULL,
[Tier1WorkCompletionByBuildingTimeZoneDate] [datetime] NULL,
[Tier1WorkCompletionByBuildingTimeZoneYMD] [int] NULL,
[ModifiedUTCDate] [datetime] NULL,
[ModifiedByPersonnelId] [int] NULL,
[CompletionUTCDate] [datetime] NULL,
[CompletionUTCYMD] [int] NULL,
[CompletionInBuildingTimeZoneDate] [datetime] NULL,
[IsActivityComplete] [bit] NOT NULL,
[IsSLAMet] [bit] NULL,
[OwningTeamName] [varchar](255) NULL,
[CostCenterCode] [varchar](40) NULL,
[CaseOriginType] [nvarchar](100) NOT NULL,
[DeviceType] [nvarchar](100) NOT NULL,
[FSCProviderAccountId] [int] NOT NULL,
[CreatedFromSystemCode] [nvarchar](100) NULL,
[RequestorPersonnelId] [int] NOT NULL,
[RequestorEmailAlias] [varchar](30) NOT NULL,
[RequestorFullName] [varchar](100) NULL,
[RequestorIsSuperUser] [bit] NULL,
[RequestorIsProviderUser] [bit] NOT NULL,
[RequestorHeadCountTypeGroupDesc] [varchar](30) NOT NULL,
[RequestorCSCompanyAgencyName] [varchar](30) NOT NULL,
[RequestorProfitCenterCode] [char](10) NOT NULL,
[RequestorCostCenterCode] [char](10) NOT NULL,
[ContactPersonnelId] [int] NOT NULL,
[ContactEmailAlias] [varchar](30) NOT NULL,
[ContactFullName] [varchar](100) NOT NULL,
[ContactIsSuperUser] [bit] NOT NULL,
[ContactIsProviderUser] [bit] NOT NULL,
[ContactHeadCountTypeGroupDesc] [varchar](30) NOT NULL,
[ContactCSCompanyAgencyName] [varchar](30) NOT NULL,
[ContactProfitCenterCode] [char](10) NOT NULL,
[ContactCostCenterCode] [char](10) NOT NULL,
[OwnerPersonnelId] [int] NOT NULL,
[RoomTypeCode] [varchar](50) NULL,
[CreatedDate] [datetime] NOT NULL,
[CreatedBy] [varchar](30) NOT NULL,
[UpdatedDate] [datetime] NULL,
[UpdatedBy] [varchar](30) NULL,
[OverriddenStatus] [varchar](50) NULL
)

USQL External Table Schema:

CREATE EXTERNAL TABLE IF NOT EXISTS dbo.TABLE1_Local
(
FSCServiceRequestId int,
ServiceRequestCRMId Guid,
TicketNumberTitle string,
ProblemDescription string,
FSCServiceRequestStatusId int,
FSCServiceRequestPriorityId int,
PriorityOverrideReason string,
RequestorPhoneNumber string,
FSCProblemRoomNumber string,
BuildingId int?,
FSCProblemClassId int,
FSCProblemTypeId int,
ReclassificationReason string,
RequestCancellationReason string,
IsCancelledForReclassification bool?,
IsSurveyServiceRequest bool?,
ProblemOccurredUTCDate DateTime?,
ProblemOccurredUTCYMD int?,
ProblemOccurredInBuildingTimeZoneDate DateTime?,
CreationUTCDate DateTime,
CreationUTCYMD int,
SubmittedUTCDate DateTime?,
SubmittedInBuildingTimeZoneDate DateTime?,
DueUTCDate DateTime?,
DueUTCYMD int?,
DueInBuildingTimeZoneDate DateTime?,
RequestedFutureDueUTCDate DateTime?,
ProviderAdjustedDueInBuildingTimeZoneDate DateTime?,
ProviderAdjustedDueInBuildingTimeZoneYMD int?,
Tier1WorkCompletionByBuildingTimeZoneDate DateTime?,
Tier1WorkCompletionByBuildingTimeZoneYMD int?,
ModifiedUTCDate DateTime?,
ModifiedByPersonnelId int?,
CompletionUTCDate DateTime?,
CompletionUTCYMD int?,
CompletionInBuildingTimeZoneDate DateTime?,
IsActivityComplete bool,
IsSLAMet bool?,
OwningTeamName string,
CostCenterCode string,
CaseOriginType string,
DeviceType string,
FSCProviderAccountId int,
CreatedFromSystemCode string,
RequestorPersonnelId int,
RequestorEmailAlias string,
RequestorFullName string,
RequestorIsSuperUser bool?,
RequestorIsProviderUser bool,
RequestorHeadCountTypeGroupDesc string,
RequestorCSCompanyAgencyName string,
RequestorProfitCenterCode string,
RequestorCostCenterCode string,
ContactPersonnelId int,
ContactEmailAlias string,
ContactFullName string,
ContactIsSuperUser bool,
ContactIsProviderUser bool,
ContactHeadCountTypeGroupDesc string,
ContactCSCompanyAgencyName string,
ContactProfitCenterCode string,
ContactCostCenterCode string,
OwnerPersonnelId int,
RoomTypeCode string,
CreatedDate DateTime,
CreatedBy string,
UpdatedDate DateTime?,
UpdatedBy string,
OverriddenStatus string
)
FROM MYDATASOURCE LOCATION "[rel].[TABLE1NAME]";
2

2 Answers

1
votes

I was able to get it working by removing the IDENTITY column from the External Table.

0
votes

This seems to be a known issue for which fix is on the way. If that is the case, the workaround until the fix is rolled out is to surround the query string with brackets, e.g.

SELECT * FROM EXTERNAL <data source name> 
EXECUTE @"(<original_query_string>)"