Ini hanya tebakan karena Anda belum memberikan skema Anda, tetapi apakah salah satu kolom di kunci unik Anda dapat dibatalkan?
Sunting:
Seperti yang dikatakan @G-Nugget di komentar, Anda memerlukan kunci unik pada kolom yang dimaksud:
http://dev.mysql.com/doc /refman/5.6/en/insert-on-duplicate.html
Anda harus memiliki kunci unik pada kombinasi kolom yang harus unik.
misalnya:
ALTER TABLE yourTable ADD UNIQUE KEY (`canid`, `categoryid`);
Juga, saat mengajukan pertanyaan basis data, harap sertakan SHOW CREATE TABLE
untuk tabel yang dimaksud.