📜  Python Psycopg - 连接类(1)

📅  最后修改于: 2023-12-03 14:46:03.135000             🧑  作者: Mango

Python Psycopg 连接类

Psycopg是一个流行的Python数据库适配器,它支持PostgreSQL。Python开发人员可以使用Psycopg来连接和操作PostgreSQL数据库。Psycopg提供了一个连接类,可以通过该类创建和管理数据库连接,执行数据库查询和事务等操作。

Psycopg安装

Psycopg可以通过pip包管理器安装。使用以下命令安装最新的Psycopg版本:

pip install psycopg2
Psycopg连接类

Psycopg提供了“psycopg2.connect”函数来创建与PostgreSQL的连接。此函数返回一个Connection对象。Connection类提供了在Python中执行SQL命令的方法,例如“execute”和“executemany”。

以下是使用Psycopg Connection类连接到PostgreSQL数据库的示例代码:

import psycopg2

# 数据库连接信息
database = "mydb"
user = "myuser"
password = "mypassword"
host = "localhost"
port = "5432"

conn = psycopg2.connect(database=database, user=user, password=password, host=host, port=port)
cursor = conn.cursor()

# 执行SQL查询
cursor.execute("SELECT * FROM mytable")

# 获取查询结果
rows = cursor.fetchall()
for row in rows:
  print(row)

# 关闭连接
cursor.close()
conn.close()

Psycopg连接类方法

以下是Psycopg Connection类可用的常用方法:

  • close() - 关闭连接
  • commit() - 提交当前事务
  • rollback() - 回滚当前事务
  • cursor([name[, cursor_factory]]) - 创建一个Cursor对象
  • execute(query[, vars]) - 执行一个数据库查询
  • executemany(query, vars_list) - 将一个序列的参数传递给数据库执行
Psycopg连接类SQL查询示例

以下是使用Psycopg Connection类执行SQL查询的示例:

import psycopg2

# 数据库连接信息
database = "mydb"
user = "myuser"
password = "mypassword"
host = "localhost"
port = "5432"

conn = psycopg2.connect(database=database, user=user, password=password, host=host, port=port)
cursor = conn.cursor()

# 创建表
cursor.execute('''CREATE TABLE mytable (id SERIAL PRIMARY KEY, name VARCHAR(256) NOT NULL)''')

# 插入行
cursor.execute("INSERT INTO mytable (name) VALUES (%s)", ('name1',))

# 执行查询
cursor.execute("SELECT * FROM mytable")

# 获取结果
rows = cursor.fetchall()
for row in rows:
  print(row)

# 回滚更改
conn.rollback()

# 删除表
cursor.execute('''DROP TABLE mytable''')

# 提交更改
conn.commit()

# 关闭连接
cursor.close()
conn.close()

总结

本文介绍了Psycopg连接类及其常用方法。Psycopg连接类是连接到和操作PostgreSQL数据库的重要工具。无论是在Web开发还是数据科学中,通过使用Psycopg的连接类,Python开发人员可以更有效地访问PostgreSQL数据库并执行查询和事务操作。