SSIS BCP&;平面文件-文件中的记录数量是否有限制?
我正在处理的文件大约有2.07亿行。在SSIS中,它不断失败 数据文件中第1行第2列的列太长。验证是否正确指定了字段终止符和行终止符 现在,当我复制一大块行并放入另一个txt文件并导入时,我没有得到错误SSIS BCP&;平面文件-文件中的记录数量是否有限制?,ssis,Ssis,我正在处理的文件大约有2.07亿行。在SSIS中,它不断失败 数据文件中第1行第2列的列太长。验证是否正确指定了字段终止符和行终止符 现在,当我复制一大块行并放入另一个txt文件并导入时,我没有得到错误 如果我不使用批量插入并使用常规数据流任务,我可以将行放入sql。有两件事需要检查: 列2的列长度定义。它可能被设置为100之类的值,然后您尝试导入一行,该行的列长度高于该列 如果有可能出现在数据内部的列分隔符,请选中。你得到了一个带有的文件作为分隔符,当您得到包含分号的值时,平面文件将遇到问题
如果我不使用批量插入并使用常规数据流任务,我可以将行放入sql。有两件事需要检查:
2
的列长度定义。它可能被设置为100
之类的值,然后您尝试导入一行,该行的列长度高于该列的文件
作为分隔符,当您得到包含分号的值时,平面文件将遇到问题该文件相当长,但我认为与此无关,因为错误可能是其他原因。您可以做的另一件事是确保在oledb目标上关闭大容量插入。在极少数情况下,我会得到不插入的记录
实际上,如果有人知道这是为什么,我很想知道。
我成功地将BCP应用到一个较小版本的大文件……但是当我尝试大文件时,我得到了错误。考虑下面的情况:通过创建和配置一个新的任务来导入一个平面文件,平面文件将猜测每个导入列的输出列长度。为了猜测,它使用前100行。因此,如果有100个列值的长度为10,而值101的长度为20,则任务将失败。这可能是文件内部的一个错误,例如缺少分隔符,或者值变化太大。