为商店添加取货选项是一门适合已掌握基本 SQL 与终端导航的 MySQL 实践项目课程。你将扩展现有订单系统,让新结账客户端能够选择取货点,同时让旧客户端继续省略这个新字段。原订单标识、金额、备注与商品明细关系都必须保留。
两个 Guided Lab 教授兼容扩展、准确回填历史选择与独立收紧规则。一个独立 Challenge 将这些判断迁移到维修店,改变取货柜台、默认值与订单标识。每个单元都提供自己的全新数据与可直接使用的 Terminal。
你将学到什么
- 用明确默认值扩展表结构,保留旧客户端省略新列的写入方式。
- 按已审批的订单 ID 映射回填,不从姓名或默认值猜测历史选择。
- 在业务数据被部分修改前,拒绝不完整、重复或无效的映射。
- 强制取货字段非空且引用有效,同时保留合法的新旧结账操作。
- 区分事务内的数据变更与 MySQL DDL,观察 ROLLBACK 无法撤销的内容。
本课程适合谁
适合希望演进现有表结构、同时保留业务数据的数据库开发入门者与 MySQL 学习者。前置要求是基本终端导航、MySQL 连接、SELECT/WHERE、INSERT/UPDATE,以及列、主键和默认值。课程会在 Challenge 前解释所需的 JOIN、聚合、临时表与事务模式。
LabEx 提供 Oracle MySQL、原订单和明细、已审批历史映射、结账工具与浏览器 Terminal。你编写 SQL 文件,无需 Python 或应用编程。
常见问题
最终交付什么? 扩展、回填与收紧 SQL 文件,以及实际完成迁移的订单系统。两个预置结账版本必须可用,无效取货写入必须被拒绝,受保护的历史数据和后来选择必须保持正确。
课程承诺零停机迁移吗? 不承诺。操作限定于顺序请求的受控维护窗口。你会观察原生隐式提交行为,理解为什么把 ALTER 放进事务不等于自动回滚 DDL。课程不证明无锁发布或任意并发迁移安全。

