SQLAlchemy 是一个用于 Python 的 SQL 工具包和 ORM(对象关系映射)系统。它提供了一种高级的抽象方式来与数据库进行交互,使得开发者可以使用 Python 类和对象的方式来操作数据库表,而不需要直接编写 SQL 语句。
要在 SQLAlchemy 中映射 MySQL 数据库,首先需要安装相应的驱动(如 mysqlclient
或 pymysql
),然后在 SQLAlchemy 的配置中指定数据库连接信息。
以下是一个简单的示例代码,展示如何使用 SQLAlchemy 映射 MySQL 数据库并定义一个简单的模型:
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
# 创建数据库引擎
engine = create_engine('mysql+pymysql://username:password@localhost/dbname')
# 创建 Declarative Base 类
Base = declarative_base()
# 定义模型类
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String(50))
email = Column(String(120), unique=True)
# 创建表结构(如果尚不存在)
Base.metadata.create_all(engine)
# 创建 Session 类
Session = sessionmaker(bind=engine)
# 创建 Session 实例
session = Session()
# 使用 Session 进行数据库操作
new_user = User(name='John Doe', email='johndoe@example.com')
session.add(new_user)
session.commit()
# 查询数据
users = session.query(User).all()
for user in users:
print(user.name, user.email)
# 关闭 Session
session.close()
更多关于 SQLAlchemy 映射 MySQL 的详细信息和示例代码,可以参考 SQLAlchemy 的官方文档:https://docs.sqlalchemy.org/en/14/core/engines.html#mysql
领取专属 10元无门槛券
手把手带您无忧上云