Table 使用 psycopg 时不会改变
Table won't alter when using psycopg
我在更改我的 postgres 数据库中的 table 时遇到了一些问题。我正在使用 psycopg2 并计算出 Python。我试图添加一个串行主键。花了很长时间(大table),没有抛出任何错误,所以它做了一些事情,但是当我去检查时,新列不在那里。
我希望这是我错过的愚蠢的事情,但现在我完全不知所措。
import psycopg2
username = *****
password = *****
conn = psycopg2.connect(database='mydb',user=username,password=password)
query = "ALTER TABLE mytable ADD COLUMN sid serial PRIMARY KEY"
cur = conn.cursor()
cur.execute(query)
conn.close()
我在调试时尝试过的其他事情:
- 当我删除 PRIMARY KEY 时它不起作用。
- 尝试不同的数据类型时它不起作用。
您需要添加一个提交语句,以便您的更改反映在 table 中。在关闭连接之前添加它。
conn.commit()
我在更改我的 postgres 数据库中的 table 时遇到了一些问题。我正在使用 psycopg2 并计算出 Python。我试图添加一个串行主键。花了很长时间(大table),没有抛出任何错误,所以它做了一些事情,但是当我去检查时,新列不在那里。
我希望这是我错过的愚蠢的事情,但现在我完全不知所措。
import psycopg2
username = *****
password = *****
conn = psycopg2.connect(database='mydb',user=username,password=password)
query = "ALTER TABLE mytable ADD COLUMN sid serial PRIMARY KEY"
cur = conn.cursor()
cur.execute(query)
conn.close()
我在调试时尝试过的其他事情:
- 当我删除 PRIMARY KEY 时它不起作用。
- 尝试不同的数据类型时它不起作用。
您需要添加一个提交语句,以便您的更改反映在 table 中。在关闭连接之前添加它。
conn.commit()