Tài liệu của Apple về Relationship Delete Rules rất đơn giản và rõ ràng. Nhưng nó chỉ nói về mối quan hệ One-to-Many (Xóa quy tắc cho mối quan hệ một-một-một dễ suy ra). Không rõ những quy tắc này có ý nghĩa gì đối với mối quan hệ Nhiều người một với một. Vì vậy, hãy làm rõ chúng ở đây.Xóa quy tắc cho mối quan hệ nhiều-một-một
Chúng tôi sử dụng ví dụ Employees-Department được sử dụng trong tài liệu của Apple. Mặc dù các hàm ý thực tế có thể là vô lý đối với các quy tắc này áp dụng cho mối quan hệ của nhân viên - Sở , chúng tôi, là lập trình viên, chỉ nói về ý nghĩa logic của chúng ở đây.
Deny
Nếu có một đối tượng tại điểm đến mối quan hệ, sau đó các đối tượng nguồn không thể bị xóa. Ví dụ, nếu bạn muốn xóa một nhân viên, bất kể có nhân viên nào khác trong bộ phận của mình hay không, bạn phải đảm bảo rằng phòng ban đầu tiên bị xóa nếu không nhân viên không thể bị xóa.vô hiệu hóa
Tháo đối tượng nguồn từ mối quan hệ nghịch đảo của các đối tượng tại điểm đến. (Xem giải thích ngắn gọn của @ bshirley)Ví dụ: nếu bạn xóa một nhân viên, hãy xóa anh ta khỏi mối quan hệ nhân viên của bộ phận của anh ấy. Điều này chỉ có ý nghĩa nếu số lượng nhân viên còn lại của bộ phận lớn hơn số lượng tối thiểu bắt buộc hoặc nếu bạn đảm bảo rằng bạn thêm nhân viên mới cho bộ phận trước hoạt động lưu tiếp theo.
[Câu hỏi: Nếu đó là người lao động cuối cùng, sẽ nhân viên của bộ phận quan hệ trở thành tập rỗng hoặc null?]
(Giải đáp của @TechZen:. A đến-nhiều mối quan hệ luôn luôn trả về một đối tượng bộ Không bao giờ nil. Nếu không có đối tượng ở phía bên kia của mối quan hệ, tập rỗng.)Cascade Xóa đối tượng tại điểm đến của mối quan hệ.
Ví dụ: nếu bạn xóa nhân viên, hãy xóa bộ phận của mình cùng một lúc, ngay cả khi vẫn còn các nhân viên khác trong bộ phận.
(Cách sử dụng Caveat: Nó thường gây ra "là chuỗi xích xóa toàn bộ đồ thị đối tượng", như mô tả của @TechZen trong ví dụ của mình.)
No Action
Không làm gì cả cho đối tượng ở đích của mối quan hệ.Ví dụ: nếu bạn xóa một nhân viên, hãy rời khỏi phòng của anh ấy, ngay cả khi nó vẫn tin rằng nó sở hữu nhân viên đó.
Ý nghĩa của quy Xóa cho Nhiều-to-Nhiều mối quan hệ có thể được suy ra từ đây.
lý do tại sao ví dụ này suy nghĩ và phối cảnh nhân viên .... nếu bạn xóa một nhân viên, xóa bộ phận của mình cùng một lúc, ngay cả khi vẫn còn nhân viên khác trong bộ phận .. sẽ được đảo ngược ..... nếu bạn xóa một bộ phận, hãy xóa tất cả nhân viên cùng một lúc, ngay cả khi vẫn còn nhân viên trong bộ phận –