我对使用外键删除记录有一点疑问。 问题是,在开始时我认为使用外键确实很有用,但是当我使用外键时,这对我来说确实存在问题。 例如: 我创建了两个表:
Pizza: id, name, price
Order: id_Pizza (Foreign Key), address, telephone, date
客户下订单时,会创建记录了所订购披萨的ID。 假设我有2000个比萨玛格丽塔订单(id = 1),所以我有2000条记录,id_Pizza = 1。 现在我需要从菜单中删除margherita,因为我不想再出售那种披萨但我不能,因为它在表格订单中被用作外键。
如何解决这个问题?
答案 0 :(得分:2)
永远不要删除该行 - 而是引入active bit not null
列,并在菜单上仅显示包含active=1
的表条目。
Darn,我现在很饿......