在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
,然后根据模型类创建表结构,接着进行了增删改查操作。最后关闭了会话。