Cột cần phải là DUY NHẤT. Hiện tại, không có ràng buộc nào đối với cột cho phép nó có các giá trị trùng lặp. Thay đổi cột thành DUY NHẤT:
ALTER TABLE user_books ADD UNIQUE (bookID);
Tuy nhiên, truy vấn này sẽ không thành công nếu bạn đã có các giá trị trùng lặp trong bookID
cột. Nếu bạn không quan tâm đến việc loại bỏ (tự động) các mục nhập trùng lặp, hãy sử dụng truy vấn sau để thay thế:
ALTER IGNORE TABLE user_books ADD UNIQUE (bookID);
Điều này sẽ giữ mục nhập tìm thấy đầu tiên của bất kỳ bản sao nào và xóa phần còn lại, tức là. Hãy tưởng tượng có 5 mục nhập với bookID
100. Truy vấn nói trên sẽ giữ mục nhập đầu tiên có bookID
100 và tự động xóa 4 phần còn lại.
Sau đó, bạn có thể sử dụng INSERT IGNORE INTO
sau đó.