Sakila 样例数据库  /  已知问题

7 个已知问题

Sakila 样例数据库的设计假设是,某个商店的员工只能将库存商品租给该商店的顾客,而不能租给其他商店的顾客。这个假设体现在 rentalinventorystaffstore 表之间的关系形成了一个循环。一个顾客只能属于一个商店,但员工却没有类似的限制。如果员工从其他商店出租商品,rental 表中的数据可能会变得不一致。

这个问题的解决方案留给读者。以下是一些可行的方法:

  • rental 表中添加一个 store_id 列,并在该表中添加外键,以引用该列,确保 inventory 表中的 customer_idinventory_id 以及 staff_id 拥有相同的商店。

  • rental 表上添加 INSERTUPDATE 触发器。