Колоната трябва да е УНИКАЛНА. В момента няма ограничение за колоната, което й позволява да има дублиращи се стойности. Променете колоната на УНИКАЛНО:
ALTER TABLE user_books ADD UNIQUE (bookID);
Тази заявка обаче ще бъде неуспешна, ако вече имате дублиращи се стойности в bookID
колона. Ако не ви интересува (автоматичното) премахване на дублиращи се записи, използвайте следната заявка вместо това:
ALTER IGNORE TABLE user_books ADD UNIQUE (bookID);
Това ще запази първия намерен запис от всички дубликати и ще изтрие останалите, т.е. Представете си, че имате 5 записа с bookID
100. Гореспоменатата заявка ще запази първия запис с bookID
100 и автоматично изтрийте останалите 4.
След това можете да използвате INSERT IGNORE INTO
след това.