我可以发送任何问题的选择查询,但是当我发送更新并插入查询时,它开始等待线程并且不再响应。我不确定,但这似乎是一个循环。

我知道我们必须使用“commit()”来应用更改,但这是行不通的。

这是我的代码:

import psycopg2
conn = psycopg2.connect("dbname='test' user='postgres' host='localhost' password='xx");
cursor = conn.cursor()
cursor.execute("UPDATE recording SET rank = 10 WHERE id = 10;")
conn.commit()
cursor.close ()

最佳答案

import psycopg2

conn = psycopg2.connect(
       database="dbasename",user="username",
       password='your_password',host='web_address',
       port='your_port')
cursor = conn.cursor()
cursor.execute(
  "UPDATE table_name SET update_column_name=(%s)"
  " WHERE ref_column_id_value = (%s)",
  ("column_name","value_you_want_to_update",));
conn.commit()
cursor.close()

您没有正确设置execute语句的格式。

关于python - psycopg2(插入,更新)写入问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7458749/

10-15 11:45