#azure #azure-sql-database #azure-data-factory #azure-data-factory-pipeline
#azure #azure-sql-database #azure-data-factory #azure-data-factory-конвейер
Вопрос:
Я вижу другое сообщение о такой же ошибке, но, похоже, решение не работает. Я получаю ту же ошибку «Операция по целевому копированию данных в цель не удалась: ErrorCode = TypeConversionFailure, исключение возникло при преобразовании значения ‘2150002867256’ для имени столбца ‘sourceKey’ из типа ‘String’ (точность: 255, масштаб: 255) в тип ‘Int32’ (точность:, масштаб:). Дополнительная информация: значение было либо слишком большим, либо слишком маленьким для Int32. «
Мой тип столбца источника (Synapse) (Varchar (249) и тип целевого столбца (Couchbase) являются одной и той же СТРОКОЙ. Но не уверен, что ошибка для значения ‘2150002867256’. Это ODBC-соединение между Synapse и Couchbase. И выполнение операции КОПИРОВАНИЯ в ADF
Пожалуйста, помогите, если у кого-нибудь есть какие-либо данные. Большое вам спасибо.
Комментарии:
1. вы изменили схему при сопоставлении столбца? Эта операция установит для всех столбцов строковый тип данных, а затем преобразует их в тип данных приемника. Можете ли вы показать нам скриншот сопоставления?
2. Привет @Vikas, вы должны изменить схему таблицы приемника на другой тип данных, например
bigint
. Ошибка будет устранена. Если мой ответ полезен для вас, пожалуйста, примите его как ответ. Это может быть полезно для других участников сообщества. Спасибо.3. В NoSQL мы не можем изменить тип данных. Он определил тип данных внутренне при вставке данных в корзину. Поскольку моим источником является Synapse, а целью — couchbase. Я пытался использовать cast(cast(sourcekey как BIGINT) как VARCHAR) в запросе копирования, но все еще не разрешен. Это также может быть проблемой конфигурации ODBC, но не уверен. очень странно
Ответ №1:
Ваш тип данных столбца схемы таблицы приемника sourceKey
должен быть INT(Transact-SQL):
Значение ‘2150002867256’ выходит за пределы диапазона int, который вызвал ошибку. Вы можете протестировать is в SSMS, и вы получите ошибку:
Необходимо изменить схему таблицы приемника на другой тип данных, например bigint
. Это работает хорошо.