超超哥AI云计算超哥讲AI 出品

社群入口

AI 超哥 Codex 副业群

扫码加入群聊,一起交流 AI、Codex 与副业实践。

原图注明二维码于10月20日前有效;若提示过期或无法入群,请等待更新二维码。

AI 超哥 Codex 副业群入群二维码在新窗口打开原图

迁移、接口集成与数据层交付

MySQL、SQLAlchemy 与数据库设计#Python全栈#第十四阶段#MySQL、SQLAlchemy 与数据库设计#迁移、接口集成与数据层交付约 803 字 · 2 分钟阅读
追问显示
点击任意追问卡片可收起 / 展开

metadata.create_all 与 Alembic 迁移有什么区别?

追问 创建缺失表与升级已有结构分别怎样实现?为什么 create_all 不会自动完成已有字段的所有修改?

Alembic revision、upgrade、downgrade 与 current 怎样配合?

追问 迁移脚本、依赖链与数据库版本记录怎样对应?为何回退结构不能保证恢复已经删除的业务数据?

autogenerate 为什么生成的是需要审核的候选迁移?

追问 字段重命名、默认值、约束和数据回填为何可能需要人工调整?怎样核对脚本与实际 SQL?

多个分支产生迁移 head 时,应如何整合?

追问 依赖图、merge revision 与冲突结构变更各需检查什么?为什么合并迁移图不等于所有数据库操作自然兼容?

怎样安全地给已有大表增加字段或约束?

追问 新增可兼容结构、分批回填、校验旧数据和最终收紧约束如何安排?数据库迁移与应用发布顺序怎样配合?

Flask 或 FastAPI 中如何管理每次请求的数据工作单元?

追问 创建会话、业务事务、构建输出和关闭各在哪一步?为什么应在发送成功响应前确认必要提交已成功?

如何把唯一冲突、记录不存在和数据库不可用转换为合理接口错误?

追问 数据库约束名、业务含义、状态码与日志怎样对应?为什么不应向客户端暴露 SQL、连接地址和完整驱动异常?

SQLite 验证通过为什么不一定证明 MySQL 行为正确?

追问 类型、排序规则、外键、事务、锁与迁移怎样存在差别?哪些关键样例需要在目标数据库重复验证?

应用数据库账户、迁移账户与连接配置怎样控制权限?

追问 最小权限、TLS、凭据保管和日志脱敏如何安排?为什么普通业务服务通常不需要拥有全部管理和结构变更权限?

慢接口应该怎样区分数据库与应用层瓶颈?

追问 连接池等待、SQL 耗时、扫描量、锁等待、ORM 对象构造与响应序列化分别怎样测量?如何关联请求日志和查询记录?

核对资料: Alembic 自动生成迁移。