2009-10-14 26 views
0

假設我有兩個表'a'和'b'。 'a'與'b'的關係是一對多關係。讓兩個表都有字段status。該字段的值爲「有效」和「無效」。如果我在現場status設置爲「無效」,沒有的MySQL有辦法級聯下來到綁我改變了status值該行所有表?或者這是否必須在計劃層面上完成?級聯表中的值

讓我知道這是不明確的。

回答

3

你可以在必要時可以更新所有的孩子父表使用trigger。否則,您必須在更新父行的應用程序的相同級別處理它。

+0

謝謝!我會檢查一下。 – hellopat 2009-10-14 19:44:50

0

我從來沒有試過這個,我不確定我是否會推薦它,但是如果你將status列添加到你的外鍵(所以你有兩列:表'a'的主鍵和status),然後使用on update cascade,這可能也適用。

+1

您如何將孩子的狀態設置爲不活動,但讓父母保持活動狀態? – 2009-10-14 19:08:40

+0

你不能。所以如果你需要這樣做,這不會是一個解決方案。感謝您的補充。 – Tinister 2009-10-14 19:13:15

+0

級聯更新還可能導致許多數據庫中出現鎖定問題。在設計時需要考慮一些事情。 – HLGEM 2009-10-14 20:40:48