【发布时间】:2012-09-28 19:49:53
【问题描述】:
我正在将地理编码数据从 csv 文件导入我们的数据库。
我使用了以下库 A fast csv reader 读取 csv 然后使用 SqlBulkCopy
这是我正在导入的数据的示例
"AB10","1BH","L",0,0,,,20
"AB10","1BR","L",39320,80570,57.14214,-2.11400,21
它在良好的数据上工作正常,但在第一行它会抛出异常,因为数据库设置为不接受空值。
有没有办法告诉 bulkcopy 忽略不良数据?我试图通过使用库的内置属性来让 csv 阅读器忽略坏行,但它们似乎不起作用。
csv.SkipEmptyLines = true;
csv.MissingFieldAction = MissingFieldAction.ParseError;
csv.DefaultParseErrorAction = ParseErrorAction.AdvanceToNextLine;
我想另一种选择是预先解析 csv 并删除所有有问题的行。也许有更好的 .net csv 库?
【问题讨论】:
标签: c# csv sqlbulkcopy idatareader