Я пытаюсь сделать точную копию таблицы из хранилища таблиц в Azure SQL.
У меня проблема со столбцом из исходной таблицы (хранилище таблиц), потому что он может иметь несколько типов данных, в моем случае String
или DateTime
. Проблема возникает только тогда, когда столбец ArrivalTime из первой полученной строки имеет DateTime
тип данных. Как я понял, тип данных столбца задается первой записью. Я получаю приведенную ниже ошибку только в упомянутом выше случае, потому что другие значения String
из столбца не могут быть связаны с DateTime
.
В других случаях, когда извлеченный столбец из первой строки имеет String
DataType, у меня нет никаких проблем, так как любой другие типы данных могут быть преобразованы в String
.
Столбец назначения из AzureSql имеет значение nvarchar, поэтому это не проблема. Ошибка возникает на стороне источника
Copy activity encountered a user error at Source side:
Сообщение об ошибке:
ErrorCode = UserErrorInvalidDataValue, 'Type = Microsoft.DataTransfer.Common.Shared.HybridDeliveryException, Message = Column' ArrivalTime 'содержит недопустимое значение' DateTime.Null '., Source = Microsoft.DataTransfer.Common,' 'Type = System.ArgumentException, Сообщение = Указанное приведение неверно. Не удалось сохранить в столбце ArrivalTime. Ожидаемый тип: DateTimeOffset., Source = System.Data, '' Type = System.InvalidCastException, Message = Specified cast is not valid., Source = System.Data, '.
Кто-нибудь еще сталкивался с этой ситуацией? Есть ли способ обойти эту проблему?
Спасибо