Như đã trả lời trong câu hỏi này: Cardinality in PostgreSQL, cardinality được enfforced sử dụng constraints.PostgreSQL: Làm thế nào để thực hiện cardinality tối thiểu?
Quy tắc số lượng thẻ xác định số lượng cho phép của các mối quan hệ - một, nhiều, nhiều, v.v. Nhiều người có thể đạt được bằng cách sử dụng bàn nối và một-nhiều bằng cách sử dụng khóa NGOẠI HỐI.
Nhưng làm cách nào người ta có thể thực hiện mối quan hệ một-một-một-một-một (một-một-1). Điều tương tự như để hỏi: Làm thế nào tôi có thể thực thi cardinality tối thiểu trong PostgreSQL?
Tình huống thực tế là nơi cần lưu trữ địa chỉ nói (hoặc số điện thoại) phải được cung cấp (nhưng có thể nhiều hơn một) bởi người đó (nói người dùng hoặc khách hàng).
Chỉnh sửa:
Tình huống được đề cập ở trên là trường hợp đặc biệt (với thẻ chung) của một vấn đề chung. Vấn đề chung là: Làm thế nào để thực thi cardinality của số tùy ý?
Là answered by jug a không null Tham chiếu KEY FOREIGN có thể được sử dụng như một công việc xung quanh, nếu thẻ tối thiểu là một. Nó cũng sẽ cung cấp một tính năng bổ sung để chọn mặc định trong số nhiều.
Nhưng xem xét một tình huống của mối quan hệ giữa đội ngũ Cricket và cầu thủ của mình. Mỗi đội phải có MINIMUM trong số 11 người chơi để đủ điều kiện làm một đội. Ở đây, số lượng cardinality tối thiểu là mười một (11).
Tương tự, một mối quan hệ giữa một khóa học và sinh viên trong một trường học, nơi mỗi học sinh phải ghi danh AT-ÍT NHẤT 5 khóa học và mỗi khóa học phải có tối thiểu là 10 sinh viên.
Cả hai ví dụ được thêm đều hiển thị cùng chất lượng. Làm thế nào để bạn bắt đầu xây dựng một đội cricket từ đầu? Làm thế nào để một sinh viên ghi danh vào khóa học đầu tiên của mình? Sinh viên có ít hơn 5 khóa học phải được phép tồn tại, ít nhất là tạm thời. Vì vậy, đây không phải là ** một nơi tốt để sử dụng các ràng buộc. Sử dụng truy vấn, chức năng hoặc trình kích hoạt cho mục đích. –