Her gün şema tasarlamıyorum, ancak yaptığım zaman, yönetimi kolaylaştırmak için kaskad güncellemeleri / silmeleri doğru kurmaya çalışıyorum. Cascade'lerin nasıl çalıştığını biliyorum ama hangi masanın hangisi olduğunu asla hatırlayamıyorum.
Örneğin, eğer iki tablo var - Parent
ve Child
üzerinde yabancı bir anahtarla - Child
bu referanslar Parent
vardır ve ON DELETE CASCADE
bir çağlayan tetikleyecek kaydeder ve hangi zinciri tarafından silinmiş olsun kaydeden? Benim ilk tahminim Child
kayıtları ne zaman silinir Parent
kayıtları silinir beri Child
kayıtlar bağlıdır Parent
kayıtları, ancak ON DELETE
belirsiz; o silmek anlamına gelebilir Parent
zaman kaydını Child
kayıt silinir, ya da silmek anlamına gelebilir Child
zaman kaydını Parent
silinir. Peki hangisi?
Ben sözdizimi olsaydı ON PARENT DELETE, CASCADE
, ON FOREIGN DELETE, CASCADE
ya belirsizliği kaldırmak için benzer bir şey. Bunu hatırlamak için anımsama yapan var mı?