MySQL ON DUPLICATE KEY两个唯一字段不插入

时间:2014-03-20 01:07:23

标签: php mysql

我有这张桌子

CREATE TABLE IF NOT EXISTS `set_indice_cuestionarios` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `cuestionario` int(11) NOT NULL,
  `fecha` date NOT NULL,
  `hora` time NOT NULL,
  `aplico` varchar(100) NOT NULL,
  `cliente` int(11) NOT NULL,
  `tienda` int(11) NOT NULL,
  `status` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `tienda` (`tienda`),
  UNIQUE KEY `cuestionario` (`cuestionario`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

这是我的SQL句子:

  

$sql_indice = "INSERT INTO set_indice_cuestionarios (cuestionario, fecha, hora, aplico, cliente, tienda) values('$cuestionario','$fecha','$hora','$aplico','$cliente','$tienda') ON DUPLICATE KEY UPDATE cuestionario = '$cuestionario', fecha = '$fecha', hora = '$hora', aplico = '$aplico', cliente = '$cliente', status = 0";

如果$ tienda = tienda和$ cuestionario = cuestionario,我想更新一行,如果任何值不匹配,我想更新一行。

更新发生在两个值匹配但是我只更改$ cuestionario时更新表,而不是插入新记录,当我只更改$ tienda时,它会执行Insert。我不知道我'我做错了。提前谢谢!

0 个答案:

没有答案