建立连接
创建与 Postgres 数据库的连接:
import psycopg2
connection = psycopg2.connect(
dbname='your_database',
user='your_username',
password='your_password',
host='your_host'
)
创建光标
创建数据库游标,以实现记录的遍历和操作:
cursor = connection.cursor()
执行查询
从数据库中选择数据:
cursor.execute("SELECT * FROM your_table")
4. 获取查询结果
使用游标获取数据:
records = cursor.fetchall()
for record in records:
print(record)
5. 插入记录
将数据插入数据库中的表:
cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", ('value1', 'value2'))
connection.commit() # Seal the transaction
6. 更新记录
修改记录:
cursor.execute("UPDATE your_table SET column1 = %s WHERE column2 = %s", ('new_value', 'condition_value'))
connection.commit()
7. 删除记录
删除表中的记录:
cursor.execute("DELETE FROM your_table WHERE condition_column = %s", ('condition_value',))
connection.commit()
8. 创建表格
创建新表,定义其结构:
cursor.execute("""
CREATE TABLE your_new_table (
id SERIAL PRIMARY KEY,
column1 VARCHAR(255),
column2 INTEGER
)
""")
connection.commit()
9. 删除表
删除表:
cursor.execute("DROP TABLE if exists your_table")
connection.commit()
10. 使用事务
使用事务保证原子性:
try:
cursor.execute("your first transactional query")
cursor.execute("your second transactional query")
connection.commit() # Commit if all is well
except Exception as e:
connection.rollback() # Rollback in case of any issue
print(f"An error occurred: {e}")