这是我的python代码,用于从读取csv文件执行更新操作。我也试过使用this。这没用。在
for i in cin:
try:
conn=psycopg2.connect("dbname=pharmaflare user=postgres")
cursor=conn.cursor()
cursor.execute("UPDATE pharmaflare_drug_interaction SET se_interaction ='%s' WHERE primary_drug ='%s' AND secondary_drug ='%s' AND side_effect ='%s'"%(i[3],i[0],i[1],i[2]))
conn.commit()
cursor.close()
conn.close()
#print "done",i[0],i[1],i[2],i[3]
except Exception as e:
cerr.writerow(i)
ferr.flush()
traceback.print_exc(file=sys.stdout)
continue
在这里,我面临着由于引用的问题而导致的异常语法错误: 无论单引号出现在哪里,都会出现这种例外情况。在
^{pr2}$有没有其他方法可以用来定义查询语句而不必担心引号问题?在
有几种方法可以解决这个问题。最简单的方法是使用re.escape() function。这个函数可以被认为是PHP's addslashes() function的等价物,尽管我很难做这样的比较。在
话虽如此,我的阅读表明psycopg2利用了PEP 249。如果这是真的,那么您应该能够传入参数化查询并拥有它escape them for you。在
相关问题 更多 >
编程相关推荐