''错误附近的语法不正确,没有意义

时间:2012-05-29 23:28:29

标签: sql-server

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

  

'Farms'附近的语法不正确。 'Dale'附近的语法不正确。不正确   “城市”附近的语法。 “中心”附近的语法不正确。语法不正确   靠近'Depot'。

这些行是;

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这样的城市名称之间的空间(''),但是有很多城市都有空白,并且它们在前面的行中成功插入。我没有任何意义。

你对这种情况有什么看法吗?

1 个答案:

答案 0 :(得分:2)

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

可以预期导入的第一个文件没有错误。

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

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

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

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

如果在这之后,你有10行会出错并且你看不出任何原因,只需使用SQL insert语句将它们放入你的数据库中。

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

我很想知道这对你有何影响。感谢。