ON DUPLICATE KEY UPDATE не работает для нескольких столбцов в MySQL 5.1

У меня есть стол test со следующей структурой:

CREATE TABLE IF NOT EXISTS `test` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `user_id` int(11) unsigned NOT NULL,
  `lat` varchar(100) NOT NULL,
  `long` varchar(100) NOT NULL,
  `updatedon` datetime NOT NULL,
  `addedon` datetime NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `user_id` (`user_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

и я пытаюсь использовать следующие запросы, ни один не работает:

INSERT INTO `test` (`user_id`, `lat`, `long`)
 VALUES ('1', 'latv', 'longv')
ON DUPLICATE KEY UPDATE
  lat=VALUES(lat),
long = VALUES(long)

INSERT INTO `test` (`user_id`, `lat`, `long`)
 VALUES ('1', 'latv', 'longv')
ON DUPLICATE KEY UPDATE
  lat="test_lat",
long = "test_long"

вот ошибка для одного запроса:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'long = VALUES(long)' at line 5 

Я пытаюсь это в phpmyadmin.

0 ответов

Другие вопросы по тегам