Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 重复键上的MySQL两个唯一字段不插入_Php_Mysql - Fatal编程技术网

Php 重复键上的MySQL两个唯一字段不插入

Php 重复键上的MySQL两个唯一字段不插入,php,mysql,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,

我有这张桌子

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\u indicie=插入集合\u indicie\u cuestionarios cuestionario、fecha、hora、aplico、cliente、tienda值“$cuestionario”、“$fecha”、“$hora”、“$aplico”、“$cliente”、“$tienda”关于重复键更新的提示提示:cuestionario=“$cuestionario”、fecha=“$fecha=”、hora=“$hora”、aplico=“$aplico=”、cliente=“$cliente”,状态=0

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


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

我相信您正在寻找一个组合的唯一键->唯一键'tienda','cuestionario'。这样,当两者匹配时,它将更新,否则它将输入新的。是的,这就是问题所在。非常感谢。你的插页无论如何都可能会爆炸。您在cuestionario上有一个重复的键,而您的on update只是尝试使用一开始可能导致重复冲突的值来更新字段。e、 你基本上是在告诉mysql不要再打我的头了,再打我的头。Thanx Marc,我会纠正的。