Это правильная команда:
INSERT INTO skills (`skill`)
VALUES ('PHP') -- fixed the backticks
ON DUPLICATE KEY UPDATE `skill` = 'PHP';
Я полагаю, что обратные запятые являются опечаткой.Они должны быть в одинарных кавычках.
Хотя я бы написал это как:
INSERT INTO skills (skill)
VALUES ('PHP')
ON DUPLICATE KEY UPDATE skill = VALUES(skill);
Это будет "работать", только если у вас есть уникальное ограничение на skill
:
create unique index unq_skills_skill on skills(skill);