SuperAPI AI 工具集

python-database-ops

编程与开发

查看项目

更新于 10-13 17:00

技能介绍

用途

本技能面向 Python 数据库开发,提供 SQLAlchemy 2.0 与数据库最佳实践的模式参考,帮助在编写或审查数据库相关代码时采用一致的写法。根据触发词,它适用于涉及 sqlalchemy、database、orm、migration、alembic、async database、connection pool、repository pattern 等主题的任务。

主要能力

资料中给出的内容涵盖以下方面:

  • SQLAlchemy 2.0 基础:使用 DeclarativeBase、Mapped、mapped_column 定义模型,创建 engine 与表,以及 2.0 风格查询。
  • 异步 SQLAlchemy:使用 create_async_engine、async_sessionmaker、AsyncSession 构建异步引擎与会话,并通过 await session.execute(...) 执行查询。
  • 模型关系:一对多与多对一关系,使用 relationship(back_populates=...) 与 ForeignKey。
  • 常见查询模式:基本 select、and_/or_ 多条件、排序与 limit、聚合 func.count、join、selectinload 预加载。
  • FastAPI 集成:通过依赖注入提供 AsyncSession,在路由中查询并在未找到时抛出 404。
  • 快速参考表:列出 select all、filter、first、all、count、join、eager load 对应的 2.0 风格写法。

使用方式

资料未提供该技能的安装命令或调用步骤,仅说明其包含参考文件与资源,包括:

  • ./references/sqlalchemy-async.md:异步模式、会话管理。
  • ./references/connection-pooling.md:连接池配置、健康检查。
  • ./references/transactions.md:事务模式、隔离级别。
  • ./references/migrations.md:Alembic 设置、迁移策略。
  • ./assets/alembic.ini.template:Alembic 配置模板。

内容以代码示例为主,可据此在项目中编写或对照数据库层实现。

适用场景

  • 在 Python 项目中定义或调整 ORM 模型与关系。
  • 使用 SQLAlchemy 2.0 风格编写查询。
  • 构建异步数据库访问层与会话管理。
  • 在 FastAPI 中注入数据库会话并处理查询结果。
  • 参考连接池、事务与 Alembic 迁移相关做法。

限制

该技能的安装方式、运行平台、收费与价格信息暂未提供。资料未说明其支持的具体数据库后端范围、性能承诺或效果保证,也未提供 repository pattern 的完整示例;示例仅覆盖资料中列出的代码片段,其他内容需以实际参考文件为准。