在Python中使用ORM访问PostgreSQL数据库
使用Python访问PostgreSQL数据库需要安装相应的库,比较常用的有psycopg2
和PyGreSQL
。这里我们以psycopg2
为例:
- 安装
psycopg2
库
pip install psycopg2
- 使用ORM连接数据库
import psycopg2 import psycopg2.extras from psycopg2.extensions import ISOLATION_LEVEL_AUTOCOMMIT from psycopg2 import sql from sqlalchemy.orm import sessionmaker from sqlalchemy import create_engine, Column, Integer, String from sqlalchemy.ext.declarative import declarative_base # 创建引擎 engine = create_engine('postgresql://用户:密码@主机:端口/数据库') # 创建Session Session = sessionmaker(bind=engine) session = Session() # 创建模型 Base = declarative_base() class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True) name = Column(String) password = Column(String) # 创建表 Base.metadata.create_all(engine) # 插入数据 user = User(name='pidancode.com', password='123456') session.add(user) session.commit() # 查询数据 query = session.query(User).filter_by(name='pidancode.com').first() print(f"ID:{query.id}, 姓名:{query.name}, 密码:{query.password}")
代码演示中,我使用了psycopg2
和sqlalchemy
,psycopg2
用于连接数据库,sqlalchemy
用于操作ORM。
在这段代码中,我们首先创建了一个引擎,然后使用它创建Session。接下来,创建一个模型User
,该模型映射到数据库中的users
表,包括id
、name
和password
三个字段。然后,我们使用Base.metadata.create_all(engine)
创建表,并向其中插入一条数据。
最后,我们使用ORM查询数据,输出结果。
我们可以看到,使用ORM向数据库中插入和查询数据非常方便,这是ORM的优势所在。
相关文章