我正在將地理編碼數據從csv文件導入到我們的數據庫。在批量導入數據庫期間處理csv中的empy字段
我用下面的庫 A fast csv reader讀取CSV,然後使用SqlBulkCopy
下面是我在導入數據的一個例子
"AB10","1BH","L",0,0,,,20
"AB10","1BR","L",39320,80570,57.14214,-2.11400,21
它可以在良好的數據,但就ok了第一行它會拋出一個異常,因爲數據庫設置爲不接受空值。
有沒有辦法讓bulkcopy忽略不良數據?我試圖讓csv閱讀器通過使用庫的內置屬性來忽略壞行,但它們似乎不起作用。
csv.SkipEmptyLines = true;
csv.MissingFieldAction = MissingFieldAction.ParseError;
csv.DefaultParseErrorAction = ParseErrorAction.AdvanceToNextLine;
我想另一種選擇是預先解析csv並刪除所有違規的行。也許有一個更好的csv庫在那裏爲.net?
感謝您的任何幫助。
我已經通過將csv類的數據解析爲DataTable類並對這些值進行了一些數據驗證。直接保存DataTable。它工作得很好,而且速度非常快,但如果csv庫直接支持它,它會很好,所以我通過電子郵件向作者詢問了它。 – Neil