Tôi không thiết kế lược đồ hàng ngày, nhưng khi tôi làm, tôi cố gắng thiết lập cập nhật / xóa tầng một cách chính xác để quản trị dễ dàng hơn. Tôi hiểu cách thức hoạt động của tầng, nhưng tôi không bao giờ có thể nhớ bảng nào là bảng nào.
Ví dụ: nếu tôi có hai bảng - Parent
và Child
- có khóa ngoại trên Child
tham chiếu đó Parent
và có ON DELETE CASCADE
, bản ghi nào kích hoạt một tầng và bản ghi nào bị xóa bởi tầng? Dự đoán đầu tiên của tôi sẽ là các Child
hồ sơ bị xóa khi Parent
hồ sơ bị xóa, vì Child
hồ sơ phụ thuộc vào Parent
hồ sơ, nhưng ON DELETE
là mơ hồ; nó có thể có nghĩa là xóa Parent
bản ghi khi Child
bản ghi bị xóa, hoặc nó có thể có nghĩa là xóa Child
bản ghi khi bản ghi Parent
bị xóa. Vậy đó là cái gì?
Tôi muốn cú pháp là ON PARENT DELETE, CASCADE
, ON FOREIGN DELETE, CASCADE
hoặc một cái gì đó tương tự để loại bỏ sự mơ hồ. Có ai có bất kỳ ghi nhớ để nhớ điều này?