我试图使用SQL导入导出向导将数据从Excel文件导入SQL数据库。我们已经正确上传了4张纸,我们可以查询它们。但是出于某些原因,我们的一些表格会出现一些错误,我们不确定如何解释它们或问题可能是什么,因为它们与已经有效的表格非常相似。
以下是错误:
错误0xc020901c:数据流任务1:Destination上有一个错误 - Products.Inputs [目标输入] .Columns [ProductID] - Products.Inputs [目标输入]。返回的列状态为:“该值违反了列的完整性约束。”。 (SQL Server导入和导出向导)
错误0xc0209029:数据流任务1:SSIS错误代码DTS_E_INDUCEDTRANSFORMFAILUREONERROR。 “Destination - Products.Inputs [Destination Input]”失败,因为出现错误代码0xC020907D,并且“Destination - Products.Inputs [Destination Input]”上的错误行处置指定出错时失败。指定组件的指定对象发生错误。在此之前可能会发布错误消息,其中包含有关失败的更多信息。 (SQL Server导入和导出向导)
错误0xc0047022:数据流任务1:SSIS错误代码DTS_E_PROCESSINPUTFAILED。组件“Destination - Products”(38)上的ProcessInput方法在处理输入“Destination Input”(51)时失败,错误代码为0xC0209029。标识的组件从ProcessInput方法返回错误。该错误特定于组件,但错误是致命的,将导致数据流任务停止运行。在此之前可能会发布错误消息,其中包含有关失败的更多信息。 (SQL Server导入和导出向导)
这些是什么意思?我们需要做些什么来解决它们?
谢谢
错误消息“违反列的完整性约束的值”表示它正在尝试导入数据并且它违反了ProductID
列上的约束。对于尝试进入不可归零的字段的列,可能存在空值,或者添加该行会违反某些外键约束。
我们有类似的问题。由于您的列不能为null,因此需要删除空行。只需选择最后一条记录后的所有行并将其删除,然后保存您的Excel工作表并尝试重新上传。