I made this query and looked through the manual and as far as I'm concerned can't see what's wrong with my query.
Why are MySQL errors so extremely unhelpful? Surely they could've improved the parsing engine by now?
INSERT INTO `$batch_comments`
(`plant`, `sap_code`, `batch`, `reason`, `comments_sm`, comments_sc)
VALUES('SE23', 'PAN-6587', '165701C~', 'wohooo', '', '')
ON DUPLICATE KEY UPDATE `reason` = 'wohooo', `comments_sm` = '', `comments_sc` = ''
WHERE `plant` = 'SE23' AND `sap_code` = 'PAN-6587' AND `batch` = '165701C~'