在现代软件开发中,数据库是存储和检索数据的核心组件。Python提供了多种方式来与数据库进行交互,其中psycopg2是一个流行的库,用于连接和操作PostgreSQL数据库。本文将介绍如何使用configparser模块来管理数据库连接配置,并使用psycopg2库来执行数据库操作。

配置文件:server.ini

首先,我们定义一个server.ini配置文件,其中包含了连接PostgreSQL数据库所需的所有信息:

[postgresql]
Host = localhost
User = postgres
Passwd = postgresql123
Name = postgres
Port = 5432

Python代码:连接PostgreSQL数据库

接下来,我们将编写一个Python脚本来读取这个配置文件,并使用这些配置来连接PostgreSQL数据库,然后执行一个简单的插入操作。

import configparser
import psycopg2

# 创建ConfigParser对象并读取配置文件
config = configparser.ConfigParser()
config.read('server.ini')

# 从配置文件中获取数据库连接参数
database = config["postgresql"]["Name"]
host = config["postgresql"]["Host"]
port = config["postgresql"]["Port"]
password = config["postgresql"]["Passwd"]
user = config["postgresql"]["User"]

# 使用psycopg2连接数据库
conn = psycopg2.connect(
    database=database,
    host=host,
    port=port,
    password=password,
    user=user
)

# 打印连接对象以验证连接成功
print(conn)

# 创建游标对象
cur = conn.cursor()

# 执行SQL插入语句
cur.execute("INSERT INTO postgres (id, age) VALUES (1, 17)")

# 提交事务
conn.commit()

# 关闭游标和连接
cur.close()
conn.close()

代码解析

  1. 导入模块:导入configparserpsycopg2模块。

  2. 创建ConfigParser对象:创建一个ConfigParser对象并读取server.ini配置文件。

  3. 获取配置信息:从配置文件中提取数据库连接所需的参数。

  4. 连接数据库:使用psycopg2.connect方法和提取的参数来建立与PostgreSQL数据库的连接。

  5. 创建游标:通过连接对象创建一个游标对象,用于执行SQL语句。

  6. 执行SQL语句:使用游标对象执行一个插入语句,向postgres表中插入数据。

  7. 提交事务:调用conn.commit()提交事务,确保插入操作被保存到数据库。

  8. 关闭游标和连接:操作完成后,关闭游标和数据库连接,释放资源。

结论

通过使用configparser模块,我们可以将数据库连接信息从代码中分离出来,使得代码更加清晰,并且易于维护。同时,psycopg2提供了一个强大的接口来执行数据库操作。本文展示了如何结合这两个工具来实现数据库的连接和操作,希望对你在开发中处理数据库相关任务有所帮助。