是什么原因造成的?第39行第85列出现词法错误。在:“”之后遇到:“ \ r”(13)

时间:2019-03-01 19:29:41

标签: python

您好,试图在SQL Server 2017中插入熊猫数据框,但我得到了

Item newItem = item.CopyItem();

此时

Lexical error at line 39, column 85.  Encountered: "\r" (13), after : ""

其余的看起来还可以...据我所知这是正确的吗?我究竟做错了什么?谢谢

2 个答案:

答案 0 :(得分:2)

像这样重新格式化字符串:

cursor.execute(
    """
    INSERT INTO dbo.someTable([records],
    [id], [userid], [originid], [targetid], [targetname],
    [start_date], [end_date], [next_offset], [set_id])
    values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    """,
    (row['records'], row['id'], row['userid'], row['usernanme'],
    row['originid'], row['targetid'], row['targetname'],
    row['start_date'], row['end_date'], row['next_offset'], row['set_id']))

此外,似乎您在参数周围缺少括号。

答案 1 :(得分:0)

好像有一个换行符,您的代码无法识别,这在unix和windows之间是不同的。 “ \ r \ n”适用于Windows / DOS,而“ \ n”适用于Unix,而“ \ r”适用于mac。在Windows / DOS上创建的某些东西传递给unix会出现问题。