проблемы при создании внешней таблицы для azure synapse analytics - PullRequest
0 голосов
/ 30 апреля 2020

У меня проблемы с созданием внешней таблицы в SMSS. Я храню набор данных в хранилище больших двоичных объектов и пытаюсь загрузить его оттуда во внешнюю таблицу. Я продолжаю получать эту ошибку:

HdfsBridge :: recordReaderFillBuffer - Обнаружена непредвиденная ошибка при заполнении буфера считывателя записей: HadoopSqlException: Ошибка преобразования типа данных NVARCHAR в INT

Я использовал следующий запрос

CREATE EXTERNAL TABLE [ext].[klant](
[number] [int] NOT NULL,
    [customer_id] [int] NOT NULL,
    [status] [nvarchar](50) NOT NULL,
    [shipping.postcode] [nvarchar](50) NOT NULL,
    [date_created] [datetime2](0) NOT NULL,
    [date_completed] [datetime2](0) NOT NULL,
    [shipping.address_1] [nvarchar](50) NOT NULL,
    [shipping.city] [nvarchar](50) NOT NULL
    )






WITH (
LOCATION='/customer/',
    DATA_SOURCE = storage,  
    FILE_FORMAT = fileformat,
    REJECT_TYPE = VALUE,
    REJECT_VALUE = 0


    );

Я также пытался решить эту проблему в ADF, копируя данные из источника в таблицу, но безуспешно. Я надеюсь, что кто-нибудь может помочь мне с этой проблемой. заранее спасибо

1 Ответ

0 голосов
/ 01 мая 2020

Спасибо за проверку оператора CREATE EXTERNAL DATA SOURCE. Ваша конкретная проблема c связана с одним из определений столбца между тем, что определено в вашем операторе CREATE EXTERNAL TABLE, и тем, что фактически находится в вашем файле данных.

Error converting data type NVARCHAR to INT

Данные в исходный файл данных, либо столбец number, либо столбец customer_id, является nvarchar и пытается быть сохранен как int. У вас есть дополнительные символы в вашем файле данных? Ошибка указывает на несоответствие типа данных или столбца.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...