Я думаю, что вы сделали что-то вроде этого
CREATE TABLE table1
id unsigned integer autoincrement,
name varchar,
....
primary key (id,name)
Этот первичный ключ не выбирается по уникальному имени, поскольку идентификатор автоинкремента всегда делает ключ в целом уникальным, даже с дубликатами name
-полей.
Также обратите внимание, что длинные первичные ключи - это идея плохая , чем дольше ваш PK, тем медленнее будут вставляться и выбирать. Это особенно плохо для InnoDB, потому что PK включен в каждый вторичный ключ, что приводит к увеличению количества файлов индекса.
Измените это на
CREATE TABLE table1
id unsigned integer autoincrement primary key,
name varchar,
....
unique index `name`(name)