Здравствуйте, есть примерно такая таблица:
CREATE TABLE `orders` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`shop` INT(11) NOT NULL,
`order` INT(11) NOT NULL,
`curr` VARCHAR(3) NOT NULL DEFAULT 'rub',
`amount` DECIMAL(11,2) NOT NULL,
`result` TEXT NULL DEFAULT NULL,
PRIMARY KEY (`id`, `shop`, `order`, `curr`)
);
Но если я использую:
INSERT ... ON DUPLICATE KEY UPDATE `id` = LAST_INSERT_ID(`id`), `amount` = 11.1, `result` = ''
То запись просто создается новая, когда
`shop`, `order`, `curr`
не отличаются.
Помогите, решить эту проблему, пожалуйста.