在创建用于天蓝色突触分析的外部表时遇到的问题

时间:2020-04-30 10:23:22

标签: sql database azure azure-sql-data-warehouse

我在SMSS中创建外部表有困难。我将数据集存储在BLOB存储中,并尝试从那里将其加载到外部表中。我不断收到此错误:

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 :(得分:1)

感谢您验证CREATE EXTERNAL DATA SOURCE语句。您的特定问题是在CREATE EXTERNAL TABLE语句中定义的内容与数据文件中的实际内容之间的列定义之一。

Error converting data type NVARCHAR to INT

源数据文件number列或customer_id列中的数据为nvarchar,并尝试存储为int。数据文件中是否还有其他字符? 该错误表明数据类型或列不匹配。