在Python中,ORM(对象关系映射)框架用于将数据库中的数据和Python对象进行映射,使程序员可以使用面向对象的方式操作数据库,而不必直接编写SQL语句。
常见的Python ORM框架包括:SQLAlchemy、Django ORM、Peewee等。
使用ORM框架的一般步骤如下:
定义模型类:通过定义Python类的方式,将数据库中的表映射成为类,其中类的属性对应表的字段,类的方法对应表的操作(增删改查)。
建立数据库连接:使用ORM框架提供的API,建立与数据库的连接。
创建表结构:通过调用ORM框架提供的方法,根据模型类创建对应的表结构。
增删改查操作:通过调用模型类的方法,进行数据库的增删改查操作。例如,创建对象并保存到数据库中、更新对象的属性并保存、根据条件查询数据库等。
关闭数据库连接:在程序结束时,关闭与数据库的连接。
以下是一个使用SQLAlchemy作为ORM框架的示例:
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
# 创建引擎
engine = create_engine('数据库连接字符串')
# 创建会话
Session = sessionmaker(bind=engine)
session = Session()
# 创建基类
Base = declarative_base()
# 定义模型类
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
age = Column(Integer)
# 创建表结构
Base.metadata.create_all(engine)
# 增删改查操作
user = User(name='Alice', age=20)
session.add(user)
session.commit()
user.age = 22
session.commit()
users = session.query(User).filter(User.age > 18).all()
for user in users:
print(user.name, user.age)
# 关闭会话
session.close()
以上示例中,首先创建了数据库引擎和会话,并定义了一个模型类User
,然后根据模型类创建表结构,接着进行了增删改查操作。最后关闭了会话。