在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
,然后根據模型類創建表結構,接著進行了增刪改查操作。最后關閉了會話。