Postgresql Psycopg2 SQL语句正在从查询生成器工作,但不是从Python工作

Postgresql Psycopg2 SQL语句正在从查询生成器工作,但不是从Python工作,postgresql,python-2.7,postgresql-9.2,psycopg2,Postgresql,Python 2.7,Postgresql 9.2,Psycopg2,我想使用的语句如下: UPDATE table SET colum1 = 1 WHERE colum2 LIKE '%gasse%'; 当我完全使用此语句时,包含gasse的所有内容都会得到更新,但当我在python中使用Psycopg2时: sqlstring = """UPDATE table SET colum1 = 1 WHERE colum2 LIKE '%gasse%';""" cur.execute(sqlstring) colum1没有更新我做错什么了吗?我没有正确地逃避

我想使用的语句如下:

UPDATE table SET colum1 = 1  WHERE colum2 LIKE '%gasse%';
当我完全使用此语句时,包含
gasse
的所有内容都会得到更新,但当我在python中使用Psycopg2时:

sqlstring = """UPDATE table SET colum1 = 1  WHERE colum2 LIKE '%gasse%';"""
cur.execute(sqlstring)

colum1没有更新我做错什么了吗?我没有正确地逃避什么吗

有必要在第一个命令之前提交Psycopg自动打开的事务

connection.commit()

您这样做可能只是为了说明当前的查询,但最好单独发送参数。总是。通过这样做,您也不必担心如何正确地转义查询中的数据。