【发布时间】:2018-05-22 03:47:21
【问题描述】:
基于几个示例(here,here),我可以使用 psycopg2 读取并希望从 python 运行 SQL 文件(该文件有 200 行,虽然运行速度很快,但不是我想要的在 python 文件中维护)。
这是读取和运行文件的脚本:
sql = open("sql/sm_bounds_current.sql", "r").read()
curDest.execute(sql)
但是,当我运行脚本时,会抛出以下错误:
Error: syntax error at or near "drop"
LINE 1: drop table dpsdata.sm_boundaries_current_dev;
如您所见,脚本中的第一行是删除一个表,但我不确定为什么要读取额外的字符,并且似乎找不到可能设置编码的解决方案读取文件时。
【问题讨论】:
-
10:1 该文件已被不可靠的文本编辑器损坏。 "utf8: BOM 被认为是有害的"
-
@Jasen 嗯,我只是在使用 PGAdmin3 - 我会看看是否可以检查任何其他阅读器/编写器以获得更好的方法......
标签: python postgresql psycopg2