Python Psycopg2(curr.execute)未返回任何值
我已经编写了一个脚本来更新psycopg2中的employee表,但是更新没有发生,因为currr.execute返回了一个None对象 我的代码Python Psycopg2(curr.execute)未返回任何值,python,sql,psycopg2,psql,Python,Sql,Psycopg2,Psql,我已经编写了一个脚本来更新psycopg2中的employee表,但是更新没有发生,因为currr.execute返回了一个None对象 我的代码 connm = psycopg2.connect(database="database", user = "user", password = "pass", host = "localhost", port = "5432") connm.autocommit = True s
connm = psycopg2.connect(database="database", user = "user", password = "pass", host = "localhost", port = "5432")
connm.autocommit = True
sql = """ UPDATE employee SET name = %s WHERE phone_number = %s"""
curr = connm.cursor()
username = "Mike"
query = "+0123456789"
abc = curr.execute(sql, (username, query))
print abc
connm.commit()
curr.close()
此abc对象未返回任何值
请帮帮我!
提前谢谢 引用:
该方法返回None。如果执行了查询,则可以使用fetch*()方法检索返回的值
然后,无看起来很好。祝贺:)
已编辑关于无效果:
你们能在数据库上测试你们的查询吗
my_raw_query=curr.mogrify(sql, (username, query))
print my_raw_query
检查查询是否正常,然后在数据库上复制粘贴查询以再次检查。您希望打印什么?我认为,如果您想要得到一个结果,那么除了添加fetch之外,您还需要做更多的更改。可能是更新中返回了?@ChrisTravers我想检查我的pgadmin中返回了什么。我不断检查更新是否发生。pg admin中手动执行的查询工作正常。“更新员工集合名称='D****r'其中电话号码='+9****6(M)'”;但通过psycopg2它不会发生!确定你在使用同一个数据库吗?请仔细检查连接字符串。另外,您是否尝试捕获异常?没有异常或错误,只是更新没有发生,我已经尝试了一切!