1

这是第一行的示例:

link,Title,Description,Keywords

它是由一个 excel 工作簿制作的,我尝试保存为所有 CSV 格式(窗口、ms-dos 和逗号分隔列表)我什至尝试保存为 2 种 txt 文件格式(窗口、ms-dos)

k ...这是代码:

csvReader = csv.reader(file('files/my_file.csv', "rU"), delimiter=',')

我必须有 U 否则我会得到通用换行错误

k ...这是错误:

16:56:25,085 ERROR [__main__] Script Error: syntax error at or near "."
LINE 1: ...escription, meta_keywords) VALUES ('link', 'Title'. 'Descrip...
                                                             ^

16:56:25,085 ERROR [__main__] Script Error: syntax error at or near "."
LINE 1: ...escription, meta_keywords) VALUES ('link', 'Title'. 'Descrip...

抱怨 你看到了吗...由于某种原因,当它通过 csv.reader 函数时,第一个逗号是可以的,第二个逗号变成了句号!

有人遇到过这个吗?

4

3 回答 3

3

上面的达尔克斯评论为我丢了硬币:

显然,您正在从 CSV 文件中读取数据,并将该数据插入 SQL 数据库,尽管您没有这么说。您的 SQL 语句中有语法错误。

请注意,大多数 SQL 数据库都有 CSV 导入,因此您不需要编写它们。另请注意,您显然正在尝试导入包含列标题的第一行。这肯定是不正确的。

这一切都表明,在 Stackoverflow 上显示有问题的真实代码很重要。缩小代码范围,直到您可以在小到可以粘贴到此处的代码中显示您的问题。

99% 的时间你会在这样做时发现错误。

于 2010-01-26T23:32:45.617 回答
1

这是价值观!天哪,但我做了一个 log.debug 并没有看到它在 sql 之前的输出......但这就是它的本质。我并没有尝试导入第一行,而是故意将其插入其中以不显示实际数据。带来不便敬请谅解。我不认为代码超出了我发布的那一行。它是真正的代码,除了文件名。我是 Python 的新手,而不是 SQL,所以我确信它是 csv.reader,因为它对我来说太陌生了。谢谢你们的帮助。

于 2010-01-27T14:09:18.307 回答
0

csv.reader不负责构建在您发布的错误消息中显示其片段的 SQL 语句 - 您的代码的其他部分必须是构建此语句的部分,并且它以错误的方式执行此操作。所以不要考虑csv.reader,而是考虑你对返回到其余代码的元组所做的事情!- )

于 2010-01-26T23:35:11.373 回答