【python】python postgresql获取插入数据的id
在Python中,使用psycopg2
库与PostgreSQL数据库交互时,您可以在执行INSERT语句后使用currval()
函数获取刚刚插入行的ID。以下是一个示例代码:
import psycopg2
# 连接数据库
conn = psycopg2.connect(
dbname="your_db",
user="your_user",
password="your_password",
host="your_host",
port="your_port"
)
# 创建游标对象
cur = conn.cursor()
# 假设表格"your_table"有一个自增主键"id"
# 插入数据
cur.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s) RETURNING id",
("value1", "value2"))
# 获取插入数据的ID
inserted_id = cur.fetchone()[0]
# 提交事务
conn.commit()
# 关闭游标和连接
cur.close()
conn.close()
print(f"Inserted row ID: {inserted_id}")
在这个例子中,RETURNING id
子句告诉PostgreSQL返回插入行的id
列的值。cur.fetchone()[0]
用于提取这个值。请确保将your_db
, your_user
, your_password
, your_host
, your_port
, your_table
, column1
, column2
, value1
, value2
替换为您的实际数据库信息和数据。
评论已关闭