个人感觉: * 场景1也不一定就不会删除,还要看后端的具体实现,有些简单的实现是每次更新,都会直接删除掉旧的,然后新增新的,用删除和新增来替代修改,不会有实际的修改的操作。其他两种是会绝对删除的。 * 解决这个需要后台增加判定,当涉及到sku的变动时,先判定是否有还未结束的订单或有哪些正在参与的活动,只有下架后才能修改;或者是所有的订单或活动相关的单据都做冗余字段,保存当时的sku相关信息。 * 像是京东、淘宝这些,他们都有下单时的商品快照功能,每次产品的更新都会存储一个快照,然后订单和这个快照关联,这样即便是修改了,历史的单据也不受影响。