Phụ thuộc Transitive trong cơ sở dữ liệu là gì

Tránh phụ thuộc Transitive để giúp đảm bảo bình thường hóa

Sự phụ thuộc chuyển tiếp trong cơ sở dữ liệu là mối quan hệ gián tiếp giữa các giá trị trong cùng một bảng gây ra sự phụ thuộc chức năng . Để đạt được tiêu chuẩn chuẩn hóa của Mẫu thông thường thứ ba (3NF), bạn phải loại bỏ bất kỳ sự phụ thuộc chuyển tiếp nào.

Theo bản chất của nó, một phụ thuộc chuyển tiếp đòi hỏi ba hoặc nhiều thuộc tính (hoặc cột cơ sở dữ liệu) có sự phụ thuộc chức năng giữa chúng, có nghĩa là Cột A trong bảng dựa vào Cột B thông qua cột C.

Hãy xem cách điều này có thể hoạt động.

Ví dụ phụ thuộc Transitive

TÁC GIẢ

Author_ID Tác giả Sách Author_Nationality
Auth_001 Thẻ Orson Scott trò chơi của Ender Hoa Kỳ
Auth_001 Thẻ Orson Scott trò chơi của Ender Hoa Kỳ
Auth_002 Margaret Atwood The Handmaid's Tale Canada

Trong ví dụ AUTHORS ở trên:

Nhưng bảng này giới thiệu một sự phụ thuộc chuyển tiếp:

Tránh phụ thuộc Transitive

Để đảm bảo Hình thức thông thường thứ ba, hãy loại bỏ sự phụ thuộc chuyển tiếp.

Chúng tôi có thể bắt đầu bằng cách xóa cột Sách khỏi bảng Tác giả và tạo bảng Sách riêng biệt:

SÁCH

Book_ID Sách Author_ID
Book_001 trò chơi của Ender Auth_001
Book_001 Trẻ em của tâm trí Auth_001
Book_002 The Handmaid's Tale Auth_002

TÁC GIẢ

Author_ID Tác giả Author_Nationality
Auth_001 Thẻ Orson Scott Hoa Kỳ
Auth_002 Margaret Atwood Canada

Điều này có khắc phục được không? Hãy kiểm tra các phụ thuộc của chúng tôi ngay bây giờ:

Bảng BOOKS :

Bảng AUTHORS :

Chúng ta cần thêm một bảng thứ ba để chuẩn hóa dữ liệu này:

COUNTRIES

Country_ID Quốc gia
Coun_001 Hoa Kỳ
Coun_002 Canada

TÁC GIẢ

Author_ID Tác giả Country_ID
Auth_001 Thẻ Orson Scott Coun_001
Auth_002 Margaret Atwood Coun_002

Bây giờ chúng ta có ba bảng, sử dụng các khóa ngoài để liên kết giữa các bảng:

Tại sao phụ thuộc Transitive là thiết kế cơ sở dữ liệu xấu

Giá trị tránh phụ thuộc transitive để giúp đảm bảo 3NF là gì? Hãy xem xét bảng đầu tiên của chúng ta một lần nữa và xem các vấn đề nó tạo ra:

TÁC GIẢ

Author_ID Tác giả Sách Author_Nationality
Auth_001 Thẻ Orson Scott trò chơi của Ender Hoa Kỳ
Auth_001 Thẻ Orson Scott Trẻ em của tâm trí Hoa Kỳ
Auth_002 Margaret Atwood The Handmaid's Tale Canada

Loại thiết kế này có thể đóng góp vào dị thường dữ liệu và mâu thuẫn, ví dụ:

Đây chỉ là một số lý do tại sao bình thường hóa , và tránh phụ thuộc transitive, bảo vệ dữ liệu và đảm bảo tính nhất quán.