跳到主要内容

数据库知识体系概览

问题

Python 数据库开发涉及哪些核心知识?

答案

知识体系

主题核心内容面试重要度
SQLAlchemyCore + ORM、Session、关系映射⭐⭐⭐⭐⭐
Django ORMModel、QuerySet、Manager、信号⭐⭐⭐⭐⭐
连接池连接管理、池配置、异步连接池⭐⭐⭐⭐
数据库迁移Alembic、Django Migration、版本控制⭐⭐⭐⭐

DB-API 2.0 标准

Python 定义了数据库访问的标准接口 PEP 249

import sqlite3

# 所有 DB-API 驱动遵循相同接口
conn = sqlite3.connect("app.db")
cursor = conn.cursor()

# 参数化查询防止 SQL 注入
cursor.execute("SELECT * FROM users WHERE id = ?", (user_id,))
rows = cursor.fetchall()

conn.commit()
conn.close()

常见驱动:psycopg2/asyncpg(PostgreSQL)、pymysql/aiomysql(MySQL)、sqlite3(内置)。


相关链接