JavaScript is required

Phát biểu được thực hiện để thay đổi khóa chính (PK_BONUS) của table BONUS. (chọn 2.) ALTER TABLE BONUS MODIFY CONSTRAINT PK_BONUS DISABLE VALIDATE;

A.
Không dòng mới nào dƣợc thêm vào table BONUS
B.
Existing rows of the BONUS table are validated before disabling the constraint
C.
Rows can be modified, but the primary key columns cannot change
D.
Chỉ số duy nhất được tạo ra khi định nghĩa ràng buộc bị drop
Trả lời:

Đáp án đúng: D


Câu lệnh `ALTER TABLE BONUS MODIFY CONSTRAINT PK_BONUS DISABLE VALIDATE` được sử dụng để vô hiệu hóa ràng buộc khóa chính `PK_BONUS` trên bảng `BONUS`. Hãy xem xét tác động của việc này: * **A. Không dòng mới nào được thêm vào table BONUS:** Phát biểu này không chính xác. Khi ràng buộc khóa chính bị vô hiệu hóa, các dòng mới *có thể* được thêm vào bảng, ngay cả khi chúng vi phạm ràng buộc khóa chính (ví dụ: có giá trị khóa chính trùng lặp). Tuy nhiên, việc thêm dữ liệu vi phạm ràng buộc không được khuyến khích và có thể gây ra vấn đề sau này khi ràng buộc được kích hoạt lại. * **B. Existing rows of the BONUS table are validated before disabling the constraint:** Phát biểu này chính xác. Khi sử dụng `DISABLE VALIDATE`, hệ thống sẽ kiểm tra tất cả các dòng hiện có trong bảng để đảm bảo rằng chúng tuân thủ ràng buộc trước khi ràng buộc bị vô hiệu hóa. Nếu có bất kỳ dòng nào vi phạm ràng buộc, quá trình vô hiệu hóa sẽ thất bại. * **C. Rows can be modified, but the primary key columns cannot change:** Phát biểu này không chính xác. Khi ràng buộc khóa chính bị vô hiệu hóa, các cột khóa chính *có thể* được sửa đổi. Tuy nhiên, việc sửa đổi các cột khóa chính để tạo ra các giá trị trùng lặp hoặc null (nếu khóa chính không cho phép null) có thể gây ra vấn đề khi ràng buộc được kích hoạt lại. * **D. Chỉ số duy nhất được tạo ra khi định nghĩa ràng buộc bị drop:** Phát biểu này không chính xác. Ràng buộc không bị drop mà chỉ bị disable. Chỉ số duy nhất dùng cho ràng buộc khóa chính cũng không bị drop. Nó có thể bị vô hiệu hóa, nhưng không bị drop hoàn toàn. Do đó, phương án này không đúng. Như vậy, đáp án đúng là B.

Câu hỏi liên quan