0

我正在尝试将.csv文件导入 Web 服务器中的 SQL Server 数据库。我在表中有大约 30000 行。分隔符;在 csv 文件中。它插入了 11202 行,但之后它没有插入并说;

“农场”附近的语法不正确。'Dale' 附近的语法不正确。“城市”附近的语法不正确。“中心”附近的语法不正确。“仓库”附近的语法不正确。

这些行是;

111203;Greens Farms;12;446;nocity.jpg;NULL
111205;Grosvenor Dale;12;446;nocity.jpg;NULL
111219;Jewett City;12;446;nocity.jpg;NULL
111230;Mansfield Center;12;446;nocity.jpg;NULL
111231;Mansfield Depot;12;446;nocity.jpg;NULL

我认为这是关于城市名称之间的空格(''),Green Farms但是有很多城市有空格,并且它们已成功插入到前几行中。我没有任何意义。

您对这种情况有任何想法吗?

4

1 回答 1

2

我建议将您的 csv 分成两个文件。当然,第一个文件将包含成功导入的 11202 行,第二个文件将包含剩余的 ~18798 行。

人们会期望第一个文件将被导入而没有错误。

然后,当您导入第二个文件时,您可能会发现您正在处理某种边界限制,如果该文件在 10 或 11K 次导入后也开始轰炸。

或者,您可以更快地发现导入较小的第二个文件的问题。

如果您仍然遇到完全相同的错误,但数量有限,那么我建议您完全删除错误行并将它们放入另一个文件中。

通过这种方式,您最终将导入几乎所有数据,并且您将获得一个可管理的子集,您可以再次更轻松地发现问题。

毕竟,如果您有 10 行出现错误并且您看不到任何原因,只需使用 SQL 插入语句将它们放入您的数据库中。

希望这不是自动化定期安排流程的目标的一部分!

我很想看看这对你有什么影响。谢谢。

于 2012-05-30T00:06:56.580 回答