Khoá ngoại có thể là null Postgres không?
Khoá ngoại có thể là null Postgres không?

Video: Khoá ngoại có thể là null Postgres không?

Video: Khoá ngoại có thể là null Postgres không?
Video: Học SQL 08. Phân biệt Khóa Chính và Khóa Ngoại, Ràng buộc toàn vẹn Dữ liệu | Tự học câu lệnh SQL 2024, Có thể
Anonim

CHÈN VÀO GIÁ TRỊ sản phẩm (11, 'cho Joe', 1); CHÈN VÀO GIÁ TRỊ sản phẩm (22, 'cho tất cả', VÔ GIÁ TRỊ ); Hoàn toàn hợp pháp khi có một khóa ngoại cột.

Ngoài ra câu hỏi là, một khóa ngoại có thể là null không?

MỘT khóa ngoại làm cho bảng của nó phụ thuộc vào một bảng khác được gọi là bảng cha. MỘT khóa ngoại chứa đựng vô giá trị các giá trị không thể khớp với các giá trị của cha mẹ Chìa khóa , kể từ khi có cha mẹ Chìa khóa theo định nghĩa có thể không có vô giá trị các giá trị. Tuy nhiên, một khóa ngoại rỗng giá trị luôn hợp lệ, bất kể giá trị của bất kỳ giá trị nào không vô giá trị các bộ phận.

Ngoài ra, làm cách nào để thêm khóa ngoại trong PostgreSQL? CỘNG CONSTRAINT tên_kết_thức TỪ KHÓA NGOẠI TỆ (c1) TÀI LIỆU THAM KHẢO parent_table (p1); Một lưu ý cuối cùng khi bạn muốn thêm một khóa ngoại ràng buộc BẬT XÓA CASCADE vào bảng hiện có, bạn cần thực hiện các bước sau: Bỏ hiện có khóa ngoại hạn chế. Thêm vào một cái mới khóa ngoại ràng buộc với hành động ON DELETE CASCADE.

Sau đó, một khóa ngoại có thể là null mysql không?

5 câu trả lời. NULL trong khóa ngoại hoàn toàn có thể chấp nhận được. Đối phó với NULLs trong khóa ngoại khó nhưng điều đó không có nghĩa là bạn thay đổi các cột như vậy thành KHÔNG VÔ GIÁ TRỊ và chèn các bản ghi giả ("N / A", "Không xác định", "Không có giá trị", v.v.) vào các bảng tham chiếu của bạn.

Khóa ngoại có bắt buộc không?

Vì mục đích của ngoại quốc quan trọng là xác định một hàng cụ thể của bảng được tham chiếu, nó nói chung là yêu cầu rằng ngoại quốc chìa khóa ngang bằng với ứng cử viên chốt vào một số hàng của bảng chính hoặc không có giá trị nào khác (giá trị NULL.). Quy tắc này được gọi là ràng buộc toàn vẹn tham chiếu giữa hai bảng.

Đề xuất: