JavaScript is required

Giả sử ta có PHIEUTT(số phiếu, mã hàng, số lượng, đơn giá, mã nhà cung cấp) trong đó số phiếu là khóa của PHIEUGHI, mã hàng là khóa của HANG, mã nhà cung cấp là khóa của PHIEUTT. PHIEUTT đã ở dạng chuẩn nào ? 

A.
Chưa ở chuẩn nào.
B.
2NF
C.
3 NF
D.
1 NF.
Trả lời:

Đáp án đúng: A


Để xác định PHIEUTT ở dạng chuẩn nào, ta cần xem xét các thuộc tính của nó và khóa chính. Khóa chính của PHIEUTT là số phiếu. Các thuộc tính khác là mã hàng, số lượng, đơn giá, và mã nhà cung cấp.

- 1NF: Một quan hệ ở dạng chuẩn 1 (1NF) nếu tất cả các thuộc tính của nó là atomic (không thể chia nhỏ hơn). PHIEUTT thỏa mãn 1NF vì tất cả các thuộc tính đều là atomic.
- 2NF: Một quan hệ ở dạng chuẩn 2 (2NF) nếu nó ở dạng chuẩn 1 (1NF) và tất cả các thuộc tính không khóa (non-key attributes) phụ thuộc đầy đủ vào khóa chính. Ở đây, mã hàng, số lượng, đơn giá, mã nhà cung cấp phụ thuộc vào số phiếu (khóa chính). Do đó, PHIEUTT thỏa mãn 2NF.
- 3NF: Một quan hệ ở dạng chuẩn 3 (3NF) nếu nó ở dạng chuẩn 2 (2NF) và không có thuộc tính không khóa nào phụ thuộc bắc cầu vào khóa chính. Trong trường hợp này, mã hàng, mã nhà cung cấp là khóa ngoại của các bảng khác (HANG, và bảng tương ứng của mã nhà cung cấp), nên các thuộc tính của HANG (ví dụ, tên hàng) hoặc của bảng nhà cung cấp (ví dụ, tên nhà cung cấp) sẽ phụ thuộc vào số phiếu thông qua mã hàng hoặc mã nhà cung cấp. Tuy nhiên, bản thân số lượng và đơn giá chỉ phụ thuộc trực tiếp vào số phiếu. Do đó, không có phụ thuộc bắc cầu, và PHIEUTT thỏa mãn 3NF.

Vậy, PHIEUTT đã ở dạng chuẩn 3NF.

Câu hỏi liên quan