【发布时间】:2021-02-09 14:00:28
【问题描述】:
我正在尝试执行一个简单的查询,稍后我会将其写入 docx。 查询看起来像这样:
db_con = DB_CONNECTION()
with db_con.cursor() as cursor:
cursor.execute("Select " + column + " \
FROM table.example \
WHERE code = '" + requirement +"' AND " + column + " != '';")
rows = []
for row in cursor.fetchall():
rows.append(str(row)[2:-4])
return rows
在这种情况下,所有返回的行都是已收集的 cmets。其中一些包含换行符。
在数据库中,换行符保存为"\n"。使用 pyodbc 获取它们会导致它们返回为"\\n",在某些情况下返回为"\\\\n"。 (即使是同一行也可以在这两个选项之间进行更改)
有谁知道为什么 pyodbc 会这样做?或者我怎样才能避免这种情况?
我丑陋的解决方案是编写一个函数,它搜索"\\",如果找到 -> 搜索更多相邻的反斜杠并将它们全部替换为一个。
感谢您的帮助!
【问题讨论】: