Foreign Key'siz Tablo Tasarlamak
Uygulama doğrular, tablo unutur

Yorum tablosunda post_id uuid, index var, FK yok. Gerekçe: 'yazma hızı, cascade korkusu, uygulama zaten kontrol ediyor'. Uygulama hard delete'i bir endpoint'te unuttu. 14 yorum, olmayan yazıya işaret etti. JOIN posts p ON p.id = c.post_id onları yuttu; COUNT(*) yutmadı.
ALTER TABLE comments
ADD CONSTRAINT comments_post_id_fkey
FOREIGN KEY (post_id) REFERENCES posts(id)
ON DELETE CASCADE
NOT VALID;
ALTER TABLE comments VALIDATE CONSTRAINT comments_post_id_fkey;
NOT VALID mevcut orphan'ı deploy anında patlatmaz. VALIDATE sonra, yazmayı az keserek tarar. Orphan'ı önce temizledim. ON DELETE CASCADE yorum için doğru; fatura satırında RESTRICT. Kısıtı uygulamaya bırakmak, ikinci yazarı unutmaktır. Unutuluyor.
Yorumlar
Yorumlar (0)
Yorumlar üyelere açık. Üye ol · Giriş yap